我想知道哪种方法更快?
Integer.valueOf(String string)
或Integer.parseInt(String string)
?
两种方法之间是否有性能或内存差异?
我见过Difference between parseInt and valueOf in java?,但这并没有解释性能方面的差异。
答案 0 :(得分:17)
我不会看性能。 API表示Integer.valueOf(String)
的解释方式与传递给Integer.parseInt(String)
的方式相同,只是它被包装到Integer
中。我会看看你需要什么:Integer
或int
。
Integer.valueOf
会返回Integer
。
Integer.parseInt
会返回int
。
答案 1 :(得分:4)
Integer.valueOf()
在内部使用Integer.parseInt()
,valueOf
返回Integer
对象,而parseInt()
则返回int
。
所以parseInt()
更快。
答案 2 :(得分:1)
valueOf(String)
会返回new Integer()
个对象,而parseInt(String)
会返回原始int
。
答案 3 :(得分:0)
Integer.valueOf(String string)
返回新创建的包装对象。
Integer i = Integer.valueOf("5");
Integer.parseInt(String string)
返回指定的原语。
int i = Integer.parseInt("5");