【发布时间】:2015-01-28 04:56:00
【问题描述】:
我有几千行的文本文件,类似这样:
0000:0010:1111:3000
0003:0010:1113:3000
0004:0010:1188:3009
以此类推,其中数据将被解析为整数。
最明显的方法是使用Integer.parseInt(String)。但是,它需要一个String,并且由于Strings 是不可变的,我们必须一次又一次地分配Strings 才能将它们转换为整数。
它将在移动设备上运行,分配一个字符串并让 GC 运行需要相当大的努力。
我希望能够有像parseInt(char[] chars, int offset, int length) 这样的方法,这样我们就不需要进行分配了。那可能吗?标准 Java/JDK/Android 库中是否有任何实现可以做到这一点?
【问题讨论】:
-
是什么让您认为分配
char[]会比分配String更有效?它们都是对象。 -
@ApproachingDarknessFish 整个文件或行可以放入单个
char[],但我们需要多个String对象来将值解析为整数。
标签: java string integer parseint