【问题标题】:How does Integer.toString in Java exactly work?Java 中的 Integer.toString 究竟是如何工作的?
【发布时间】:2014-12-19 03:23:58
【问题描述】:
public static void main (String[] args) { 
    int a = 0010;
    String num = Integer.toString(a);
    System.out.println(num);    
} 

为什么打印的是 8 而不是 0010?

【问题讨论】:

标签: string tostring


【解决方案1】:

Java 将以0 开头的整数解释为以octal 表示。八进制的10(以 8 为基数)是十进制的 8(以 10 为基数)。 Integer.toString() 在这种情况下做的是正确的事情,因为 a 的值确实是 8。

【讨论】:

    【解决方案2】:

    整数以二进制形式存储在内存中。有几种方法可以定义整数文字。 0010 是八进制,以 8 为底。toString 以 10 为底(十进制)打印。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-06-26
      • 2021-08-15
      • 2012-06-08
      • 2011-10-11
      • 2013-07-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多