我在Eclipse中创建了一个基于窗口的小应用程序。我已经创建了一个jtextfield,当我输入input并点击submit时,它应该在与文本区域相同的窗口中显示输出。我做错了什么?窗外。
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();
}
}
当我输入一个表达式时,它显示"匹配和不匹配"。它还应该通过在窗口中打印来显示来自表达式的调试信息。
这是应用程序窗口
在创建了包含用于输入的小部件(JLabel、JEditText和JButton)的JFrame之后,您需要添加一个JLabel或一个JTextArea来放置输出。然后使用JLabel或JTextArea的适当方法,比如setText()来显示输出。关于如何做到这一点的细节,我建议做谷歌搜索。特别是,您应该检查您在Oracle Java教程中获得的任何点击。