下面是一个Java编写的判断括号是否正确匹配的代码示例:

import java.util.Scanner;
import java.util.Stack;

public class BracketMatching {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入包含有花括号{}、中括号[]、小括号()的字符串:");
        String input = scanner.nextLine();
        scanner.close();

        boolean isMatched = isBracketMatched(input);
        if (isMatched) {
            System.out.println("括号匹配正确");
        } else {
            System.out.println("括号匹配不正确");
        }
    }

    public static boolean isBracketMatched(String input) {
        Stack<Character> stack = new Stack<>();

        for (char c : input.toCharArray()) {
            if (c == '{' || c == '[' || c == '(') {
                stack.push(c);
            } else if (c == '}' || c == ']' || c == ')') {
                if (stack.isEmpty()) {
                    return false;
                }
                char top = stack.pop();
                if ((c == '}' && top != '{') || (c == ']' && top != '[') || (c == ')' && top != '(')) {
                    return false;
                }
            }
        }

        return stack.isEmpty();
    }
}

该代码通过使用栈来判断括号是否正确匹配。遍历字符串中的每个字符,如果是左括号则入栈,如果是右括号则与栈顶元素进行匹配,如果匹配成功则栈顶元素出栈,否则返回false。最后判断栈是否为空,为空则表示所有括号都正确匹配,返回true;否则返回false

从键盘输入一个包含有花括号、中括号、小括号的字符串判断括号是否正确匹配输出判断结果。java编写

原文地址: https://www.cveoy.top/t/topic/hK8A 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录