java 哪个更快?Integer.valueOf(String string) 还是 Integer.parseInt(String string)?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/13933287/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-31 14:29:38  来源:igfitidea点击:

Which one is faster? Integer.valueOf(String string) or Integer.parseInt(String string)?

javaandroid

提问by Linaina

I want to know which method is faster?

我想知道哪种方法更快?

Integer.valueOf(String string)or Integer.parseInt(String string)?

Integer.valueOf(String string)或者Integer.parseInt(String string)

Is there any Performance or Memory difference between the two approaches?

两种方法之间是否有性能或内存差异?

I have seen Difference between parseInt and valueOf in java?but this does not explains difference in terms of performance.

在 java 中看到了 parseInt 和 valueOf 之间的区别?但这并不能解释性能方面的差异。

回答by Tom Verelst

I would not look at performance. The API says that Integer.valueOf(String)is interpreted the same as if it has been passed to Integer.parseInt(String), except it is wrapped into an Integer. I would look at what you need: an Integeror an int.

我不会看性能。API 表示,Integer.valueOf(String)它的解释与传递给 的解释相同Integer.parseInt(String),只是它被包装到Integer. 我会看看你需要什么: anInteger或 an int

Integer.valueOfreturns an Integer.

Integer.valueOf返回一个Integer.

Integer.parseIntreturns an int.

Integer.parseInt返回一个int.

回答by Rajeev N B

Integer.valueOf()uses Integer.parseInt()internally and valueOfreturns IntegerObject whereas parseInt()returns int. So parseInt()is faster.

Integer.valueOf()Integer.parseInt()内部使用并valueOf返回IntegerObject 而parseInt()返回int. 所以parseInt()更快。

回答by Aamir Shah

valueOf(String)returns a new Integer()object whereas parseInt(String)returns a primitive int.

valueOf(String)返回一个new Integer()对象,而parseInt(String)返回一个原语int

回答by Ravi

Integer.valueOf(String string)returns a newly created wrapped object.

Integer.valueOf(String string)返回一个新创建的包装对象

Integer i = Integer.valueOf("5");

Integer i = Integer.valueOf("5");

Integer.parseInt(String string)returns the named primitive.

Integer.parseInt(String string)返回命名的原语

int i = Integer.parseInt("5");

int i = Integer.parseInt("5");