Eclipse(GUI),在同一窗口中提供输入并从程序获取输出

时间:2016-08-08 22:20:12

标签: java eclipse

我在Eclipse中创建了一个基于Window的小应用程序。我创建了一个jtextfield,当我输入input并点击提交时,它应该在与文本区域相同的窗口中显示输出。我究竟做错了什么? The window.

 import java.util.*;
 import java.lang.String;

 class ParenthesisMatching
 {
    public static void main(String[] args) 
    {
        Scanner scan = new Scanner(System.in);
        Stack<String> stk = new Stack<String>();
        System.out.println("Enter expression");
        String exp = scan.next();        
        if(isValid(exp))
            System.out.println("matched");
        else System.out.println("unmatched");

    }

    public static boolean isValid(String s) {
        HashMap<Character, Character> map = new HashMap<Character, Character>();
        map.put('(', ')');
        map.put('[', ']');
        map.put('{', '}');

        Stack<Character> stack = new Stack<Character>();

        for (int i = 0; i < s.length(); i++) {
            char curr = s.charAt(i);

            if (map.keySet().contains(curr)) {
                stack.push(curr);
            } else if (map.values().contains(curr)) {
                if (!stack.empty() && map.get(stack.peek()) == curr) {
                    stack.pop();
                } else {
                    return false;
                }
            }
        }

        return stack.empty();
    }  
 }

当我输入一个表达时,它会说,&#34;匹配和不匹配。&#34;它还应该通过在窗口中打印来显示表达式的调试信息。

这是应用程序窗口中的代码

1 个答案:

答案 0 :(得分:0)

在创建包含输入小部件(JLabel,JEditText和JButton)的JFrame之后,需要添加JLabel或JTextArea来放置输出。然后使用JLabel或JTextArea的相应方法,例如setText()来显示输出。有关如何执行此操作的详细信息,我建议您进行Google搜索。特别是,您应该查看Oracle Java教程中的任何匹配。