class Solution {
private Map<Character,Character> map;
public Solution(){
map=new HashMap<Character,Character>();
map.put('}','{');
map.put(']','[');
map.put(')','(');
}
public boolean isValid(String s) {
Stack<Character> stackChar=new Stack<Character>();
for(int i=0;i<s.length();i++){
char var=s.charAt(i);
char tmp;
if(map.containsKey(var)){
tmp=stackChar.isEmpty()?'#':stackChar.pop();
if(tmp!=map.get(var))
return false;
}else {
stackChar.push(var);
}
}
return stackChar.isEmpty();//如果栈还有元素,说明没匹配完毕,返回false。否则返回true.
}
}