黑马程序员技术交流社区
标题:
求大侠指点基本数据类型包装类的问题
[打印本页]
作者:
何仕映
时间:
2013-3-26 16:11
标题:
求大侠指点基本数据类型包装类的问题
本帖最后由 何仕映 于 2013-3-26 23:21 编辑
为什么以下程序运行的结果会是153呢?在231前面加个0为什么就变成了153呢?为什么不是0231呢?
class IntegerDemo
{
public static void main(String[] args)
{
sop(Integer.toString(0231));
}
public static void sop(Object obj)//打印
{
System.out.println(obj);
}
}
复制代码
作者:
高顺德
时间:
2013-3-26 16:22
本帖最后由 天下 于 2013-3-26 16:37 编辑
八进制0231的十进制是153 因为你在数字前面加了0使得转换程序把它认为是8进制了 所以你打印出来的值是153 如果你把0231的0去掉就可以打印出来153了
作者:
HM李超
时间:
2013-3-26 16:52
231这个数值前面加一个“0”则表示的是八进制数了,0231转成十进制是2*8^2+3*8^1+1*8^0=128+24+1=153;
整数类型包括二进制,十进制,八进制,十六进制,包装类Integer的方法:
static String toString(int i) 返回一个表示指定整数的 String 对象。
返回值以十进制的字符串形式体现。
作者:
程宁宁
时间:
2013-3-26 17:24
231在前面加上0,就由10进制变成了8进制数据:
0231转成10进制就是153了.
作者:
芦子骐
时间:
2013-3-26 20:43
你用的是八进制的书写方式,例如:0x是16进制的表达方式,0是8进制的表达方式。
如果你想输出标准的0231,只能是用字符串形式了。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2