用栈来匹配
public class Solution{
public boolean isVolid(String s){
Stack<Character> mark=new Stack<>();
if(s==null || s.length==0) return false;
for(int i=0;i<s.length();i++){
//是左括号直接压入 if(s.charAt(i)=='('||s.charAt(i)=='['||s.charAt(i)=='{'){
mark.push(s.charAt(i));
}
//右括号则需要实现判断前方是否空了,是否前面匹配 if(s.charAt(i)==')'||s.charAt(i)==']'||s.charAt(i)=='}'){
if(stack.isEmpty()) return false;
char c=mark.pop();
if(c=='(' && s.charAt(i)!=')') return false;
if(c=='[' && s.charAt(i)!=']') return false;
if(c=='{' && s.charAt(i)!='}') return false;
}
}
if(mark.isEmpty()) return true;
return false;
}
}