你知道关于不同表示之间可行的算术运算是否有任何规则声明可以遵循?例如:7
int a = 0342342;
int b = 0x1abcdef;
int c = a +b;
System.out.println("It prints out : "+c);
它打印出:28152529。
结果 (c) 是 2 个操作数 a 和 b 相加的十进制表示。
如果我希望结果采用不同于十进制格式的特定表示格式怎么办?
你知道关于不同表示之间可行的算术运算是否有任何规则声明可以遵循?例如:7
int a = 0342342;
int b = 0x1abcdef;
int c = a +b;
System.out.println("It prints out : "+c);
它打印出:28152529。
结果 (c) 是 2 个操作数 a 和 b 相加的十进制表示。
如果我希望结果采用不同于十进制格式的特定表示格式怎么办?
数字0342342
和0x1abcdef
是 Java 为方便开发人员而支持的整数的文字表示形式。在 Java 中,该整数实际上只有一种表示形式,并且它存储在int
类型中,不引用数字基数(如八进制或十六进制)。
默认情况下,当您打印 时int
,它以十进制格式显示。
如果你想要其他格式,你应该使用System.out.printf
:
System.out.printf("Decimal: %d",c);
System.out.printf("Octal: %o",c);
System.out.printf("Hexadecimal: %x",c);
以十六进制打印这样做
System.out.printf("It prints out %x\n", c);
您可以使用System.out.format
以不同的格式表示。
您可以在这里找到更详细的答案:http: //docs.oracle.com/javase/tutorial/essential/io/formatting.html