写一个函数判断字符串中"{"与"}","["与"]","("与")"匹配,"{"必须在"}"前面,"["必须在"]"前面,"("必须在")"前面,可以嵌套

    boolean matchBracket( String str )
    {
        Stack stack = new Stack();
        try
        {
            for ( int i = 0; i < str.length(); i++ )
            {
                char curChar = str.charAt( i );
                switch ( curChar )
                {
                    case '[':
                    case '{':
                    case '(':
                        stack.push( curChar );
                        break;
                    case ']':
                        if ( !stack.pop().equals( '[' ) )
                        {
                            return false;
                        }
                        break;
                    case '}':
                        if ( !stack.pop().equals( '{' ) )
                        {
                            return false;
                        }
                        break;
                    case ')':
                        if ( !stack.pop().equals( '(' ) )
                        {
                            return false;
                        }
                        break;
                }
            }
        } catch ( EmptyStackException e )
        {
            return false;
        }
        if ( stack.isEmpty() )
            return true;
        else
            return false;
    }

 

你可能感兴趣的:(字符串)