以下是Java中关于数据类型的代码:
class Test
{
public static void main(String args[])
{
int i = -0777;
System.out.println(i);
}
}
以上代码的输出为-511。
如果将代码更改为:
class Test
{
public static void main(String args[])
{
int i = -777;
System.out.println(i);
}
}
输出结果为-777。
为什么输出结果不同?这段代码背后的计算是什么?