Integer.toOctalString(0100)

解决方案 »

  1.   

    System.out.println(Integer.toOctalString(0100));
      

  2.   

    如果要是希望System.out.println(0100); 输出0100  怎么做?
    如果是System.out.println(0x100);输出0x100怎么做?
      

  3.   


    楼主,不引用大家,大家是看不到的。java 控制台自动会把"0100"转成10进制的,楼主直接想在控制台输出么?
      

  4.   


    楼主,不引用大家,大家是看不到的。java 控制台自动会把"0100"转成10进制的,楼主直接想在控制台输出么?是输出到控制台,要能判断出进制,不然可能0开头0x开头的整型输入造成非法输入
      

  5.   

    楼主,不引用大家,大家是看不到的。java 控制台自动会把"0100"转成10进制的,楼主直接想在控制台输出么?是输出到控制台,要能判断出进制,不然可能0开头0x开头的整型输入造成非法输入楼主你好,输出到控制台是什么解释?
    如果是只为了打印出来,为什么一定要Integer呢?在输出的时候直接转化为你要的格式String就好了。
    int i=64; int i=0100; 对于i来说二进制的值是一致的。只是显示的方式不同。
    在输出前,自己写一个formatter方法进行转换,然后再输出可以解决问题。不必要依赖System的方法。
    希望楼主能够把用例写清楚,比如有个int i 想在控制台输出显示为8进制的。
      

  6.   

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

  7.   

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

  8.   

    你要接收的是int值啊,你传参之前先按我那样转换啊。参数非法,编译就出错了,何来return null;
      

  9.   

    你试下00100,0x1234  这些是可以作为int类型参数的
      

  10.   

    输入的int 是不确定的 怎么判断是0,或0x开头的
      

  11.   

    说一下具体问题:要通过convert(1234) 方法转换输出为壹仟贰佰叁拾肆,String convert(int arg)这是方法原型,如果convert(001000)或 convert(0x1234)为非法参数,要能判断出非法return null;非法参数,不用判断了,因为要不是Int的值,你传不进来。也就是说,在传之前编译出错。还有,怎么输入的?像元首说的,当做String输入不行么。
      

  12.   

    其实你是不是不懂int和String表示的数字有什么区别?
      

  13.   

    说一下具体问题:要通过convert(1234) 方法转换输出为壹仟贰佰叁拾肆,String convert(int arg)这是方法原型,如果convert(001000)或 convert(0x1234)为非法参数,要能判断出非法return null;非法参数,不用判断了,因为要不是Int的值,你传不进来。也就是说,在传之前编译出错。还有,怎么输入的?像元首说的,当做String输入不行么。
    convert(001000)或 convert(0x1234)为非法参数,是可以传的
      

  14.   


    不可以convert(int arg)方法参数只能是int类型,这是题目给定限定的方法
      

  15.   

    本帖最后由 fudongrifdr 于 2013-12-05 10:22:05 编辑
      

  16.   

    非要处理,先当字符串接收,再转成Int不会?真不知道你想干什么
      

  17.   

    本帖最后由 fudongrifdr 于 2013-12-05 09:32:06 编辑
      

  18.   


    先说下0100,0x100是int类型,不会报错,方法参数题目给的是int类型,是给定的方法,我要写的是方法里的代码,之后题目是由系统判定给分,系统会用一大堆实例去检测这个方法,如果要是自己写的方法我自然会传String类型,现在是题目限定了,是不可以去修改方法模型的
      

  19.   

    你非要在方法里对一个int型这么判断进制,我也想不出什么方法了
      

  20.   

    格式化输出一下就好了:public class Main {    public static void main(String[] args) {
            int a = 01000;
            int b = 0x1000;
            System.out.printf( "%o%n", a );
            System.out.printf( "%x%n", b );
        }
    }
      

  21.   

    现在是这样题目提供了String convert(int arg) 方法,参数arg只能是int类型,在方法内部要能判断出arg是否是非法输入像0或0x开头的输入就要判断出过滤掉,只能接受正常的正整数123,321,1000000,等,因为arg是要转换为大写的rmb值的,像123需要转换为"壹佰贰拾叁"输出,所以0,或0x开头的需要判断出屏蔽