日期:2014-05-20  浏览次数:20816 次

java 01000 输出时自动转换为8进制 希望是1000,
01000  输出时自动转换为8进制  希望是1000, 如何判断参数的整型数的进制

是通过程序判断,参数是整形,而不是字符

System.out.println(0100); 输出64  应该需要的是100

怎么破?

------解决方案--------------------
引用:
Quote: 引用:

System.out.println(Integer.toOctalString(0100)); 
System.out.println(Integer.toHexString(0x100));

说一下具体问题:要通过convert(1234) 方法转换输出为壹仟贰佰叁拾肆,String convert(int arg)这是方法原型,如果convert(001000)或 convert(0x1234)为非法参数,要能判断出非法return null;


非法参数,不用判断了,因为要不是Int的值,你传不进来。也就是说,在传之前编译出错。

还有,怎么输入的?像元首说的,当做String输入不行么。
------解决方案--------------------
本帖最后由 fudongrifdr 于 2013-12-05 09:32:06 编辑
0x100摆明了是个16进制,你非要当成10进制处理。。传的什么值,根本不是你这方法要考虑的问题,而是调用者该考虑的