奶尤糯米团子
2020-02-24 18:02
首先,想问一下这段代码:
int c=10;
String str1=Integer.toString(c);
不应该在执行第二行前先把int转换为Integer吗?还是这里自动装箱了?
第二个问题,想问一下这三行代码:
String str="8";
int d=Integer.parseInt(str);
int e=Integer.valueOf(str);
一般都是 对象名.方法名(参数) ,方法针对的是对象,Integer.parseInt这个意思不就变成了把Integer里的String转换成int吗?这有点矛盾吧?所以这个方法为什么不应该是str.parseInt()吗?为什么要把str放在括号里呢?像这种系统自带的方法,括号里到底是参数还是什么?
还有为什么这里是 包装类名.方法名()?不应该是 包装类的对象名.方法名() 吗?
parseXXX这个方法为什么转换的结果一定是static的呢?
大佬们求帮忙!真的不太懂有点迷
可以去看下源码,你会发现包装类的toString(),valueOf(),parseInt()等方法全是静态的。所以无需new对象,直接类名就可以调用。
因为都是包装类Integer的静态方法,不需要创建对象调用,直接就是:类名.方法名( )调用的
Java入门第三季
409792 学习 · 4340 问题
相似问题