例1:
Integer i = 2;
String str ="";
str = str + i;例2:
Integer i = 2;
String str =Integer.toString(i);这两种转换有什么不一样的地方吗?
有什么本质的区别呢..
请高手指点一下...

解决方案 »

  1.   

    如果没有区别,那么java里还给个Integer.toString(String str)方法干嘛啊..
      

  2.   

    str   =   str   +   i; 
    这句就相当于
    str = str + Integer.toString(i);
    也相当于
    str = str + i.toString();
      

  3.   

    str   =   str   +   i;   //隐式转换
    Integer   i   =   2; 
    String   str   =Integer.toString(i); //显式转换
      

  4.   

    前面一个是auto-boxing,后面一个是通过方法转换,思想上有不同。
      

  5.   

    str = str + i; 
    这个属于运算符重载,在重载方法里有类似String str =Integer.toString(i);的实现,只是你看不到那个方法而已
      

  6.   


    toString
    public static String toString(int i, int radix)  请问:java.lang.Integer 中这个方法的 int radix 参数, 怎么使用??????? 请用代码解释。 谢谢