请大家解答有效的括号

给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。

输入:s = "()"
输出:true

能多给几个案例吗,这描述的不太明白。


import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import java.util.Scanner;
import java.util.Stack;

public final class Demo {

    public static void main(String[] args) {
        final Scanner scanner = new Scanner(System.in);
        System.out.print("Input: ");
        final String input = scanner.next();
        scanner.close();

        final List<Character> list = new ArrayList<>();
        int index;
        for (final char value : input.toCharArray()) {
            if (value == ')' && (index = list.indexOf('(')) != -1) {
                list.remove(index);
            } else if (value == ']' && (index = list.indexOf('[')) != -1) {
                list.remove(index);
            } else if (value == '}' && (index = list.indexOf('{')) != -1) {
                list.remove(index);
            } else {
                list.add(value);
            }
        }
        System.out.printf("Output: %s", list.size() == 0);
    }
}