将 String 对象转换为 Integer 对象的方法有很多种。以下哪一个是最有效的:
Integer.valueOf()
Integer.parseInt()
org.apache.commons.beanutils.converters.IntegerConverter
我的用例需要创建包装器 Integer 对象...意味着没有原始 int ...并且转换后的数据用于只读。
如果您关心效率,那么创建 Integer 对象比解析它要昂贵得多。如果您必须创建一个 Integer 对象,我不会太担心它是如何解析的。
注意:Java 6u14 允许您使用命令行选项 -Djava.lang.Integer.Integer Cache.high=1024 来增加整数池的大小。
注 2:如果您正在读取原始数据,例如来自文件或网络的字节,将这些字节转换为字符串也相对昂贵。如果您要编写自定义解析器,我建议绕过转换为字符串并解析原始源数据的步骤。
注 3:如果您要创建一个 Integer,以便将其放入集合中,则可以使用 GNU Trove (trove4j) 来避免这种情况,它允许您将基元存储在集合中,也允许您放弃 Integer 创建。
理想情况下,为了获得最佳性能,您希望完全避免创建任何对象。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)