boolean在Java中,false如何可能等于true
在本程序中,false如何等于true:
public class Wow {
public static void main(String[] args) {
if ( false == true ){ // \u000a\u007d\u007b
System.out.println("How is it possible!!!");
}
}
}
你可以在下面搜索框中键入要查询的问题!
在本程序中,false如何等于true:
public class Wow {
public static void main(String[] args) {
if ( false == true ){ // \u000a\u007d\u007b
System.out.println("How is it possible!!!");
}
}
}
# 1 楼答案
我只是在试验这个问题(答案也是),发现了有趣的行为
非常令人惊讶的是(对我来说),它只打印
Printing first line
,而忽略了第二行编辑-我明白了,在第一行之后关闭main方法,第二行将在main之外作为单独的块
# 2 楼答案
好吧,我会很慷慨地假设这个问题是出于无辜
Java编译器在这个过程的早期就解析Unicode转义序列。特别是,它在剥离注释或检查语法之前执行此操作。由于
\u000a
是一个换行符,\u007d
是字符“}”,而\u007b
是字符“{”,解析器实际上正在解析此程序:此程序将始终打印“不可能”输出