import java.util.*;


public class Solution {
    /**
     * 
     * @param s string字符串 
     * @return bool布尔型
     */
    public boolean isValid (String s) {
        // write code here
        if(s.length()==0 || s.length()==1 ||s==null)
            return false;
        Stack stack = new Stack<Character>();
        char[] arr = s.toCharArray();
        for(char c:arr){
            if(c=='('||c=='['||c=='{')
                stack.push(c);
            else{
                if(!stack.isEmpty()){
                    switch(c){
                        case ')':
                            if('('!=(char)stack.pop())
                                return false;
                            break;
                        case ']':
                            if('['!=(char)stack.pop())
                                return false;
                            break;
                        case '}':
                            if('{'!=(char)stack.pop())
                                return false;
                            break;
                    }         
                }else
                    return false;
            }
        }
        return stack.isEmpty();
    }
}

注意: 1.边界条件要考虑在内,长度为0,1 2.增强for循环不能修改String类型,可以对List类型修改