我遇到了这段代码
public class Main {
static int someint;
public static void main(String[] args) {
someint = -0;
print();
}
private static int print()
{
System.out.println(someint);
return someint;
}
}
当我运行它时打印 -0
我只是好奇 -0 如何是一个合法的整数值
最佳答案
因为“-”是一元否定运算符,适用于包括 0
在内的所有数字,即使它根本不影响 0
。
参见BNF Java 规则:
numeric_expression =
( ( "-"
/ "++"
/ "--" )
expression ) ...
有趣的是,-0.0
与0.0
不同。
关于java - 为什么这段java代码可以编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16590134/