如何使用Java扫描器读取命题逻辑符号作为输入?
如果我粘贴如何使用Java扫描器读取命题逻辑符号作为输入?,java,input,java.util.scanner,Java,Input,Java.util.scanner,如果我粘贴∧,我将?作为输出接收到控制台。有人能解释一下我能做些什么来正确阅读这样的逻辑符号吗?我正在使用NetBeans 8.0.1 谢谢。问题不在于输入字符,而在于将其打印到控制台。您的控制台似乎不支持∧,因此它会打印一个问号 您应该测试console是否允许您输入∧,如下所示: Scanner in = new Scanner(System.in,"UTF-8"); System.out.println(in.next()); 如果打印了8743,您可以在内部处理字符:如下所示的比较
∧代码>,我将?
作为输出接收到控制台。有人能解释一下我能做些什么来正确阅读这样的逻辑符号吗?我正在使用NetBeans 8.0.1
谢谢。问题不在于输入字符,而在于将其打印到控制台。您的控制台似乎不支持∧代码>,因此它会打印一个问号
您应该测试console是否允许您输入∧通过打印您读取的字符的数字表示形式来正确编码>,如下所示:
Scanner in = new Scanner(System.in,"UTF-8");
System.out.println(in.next());
如果打印了8743
,您可以在内部处理字符:如下所示的比较
Scanner in = new Scanner(System.in,"UTF-8");
String s = in.next();
if (s.length() != 0) {
System.out.println((int)s.charAt(0));
}
将正常工作
否则,您应该切换到使用第一个代码页中的字符,即^
而不是∧代码>我认为您的终端编码(IDE或命令行)可能不是UTF-8,因此当它转换时,您会看到差异
我刚试过你的密码,结果∧ 回来
执行echo$LC\u CTYPE或echo$LANG检查它
读这个
及
用于使用不同的编码 你怎么打字∧' ?@抱歉,我是说粘贴。这可能是NetBean的问题。在那里尝试其他解决方案
if (s.equals("∧")) {
...
}