我对Java比较新,多年来我必须解决各种编程问题,其中需要收集的数据量是程序员无法预知的。
当程序员无法知道需要收集的变量数量时,使用列表来收集字符串或整数值是一个好习惯吗?还是在Java中使用动态数组处理这个问题更好?
当程序员无法知道需要收集的变量数量时,使用列表来收集字符串或整数值是一个好习惯吗?还是在Java中使用动态数组处理这个问题更好?
如果有疑问,即使你知道长度,使用 List 可能是更好的选择。
使用数组可能会更快,但你需要成为专家才能知道何时这样做是一个好主意,何时它只会让你的解决方案更加复杂。
顺便说一下:在 Java 中不存在动态数组。
ArrayList
通常被称为动态数组。 - user395760ArrayList
相匹配。 - user395760你做得很好。
List是一个接口,而ArrayList是它的实现。如果你不太关心面向对象的废话,那么这里有一个简单的理解方式。
List是你想要处理“系统”的方式。你不太关心其他任何事情。
但是,“系统”有自由选择多种实现方式!ArrayList、LinkedList、Vector等。
一旦你理解了这种分离,那么就可以尝试了解这些实现之间的差异和细微差别。
如果你唯一担心的是不知道需要多少元素,可以使用类似列表的东西。我假设你想要通过动态数组来管理自己的数组并调整其大小?除非你想学习它的原理,否则我不建议浪费这样的精力。
Java的好处在于List是一个接口,具有不同的实现(如ArrayList、LinkedList、Stack、Vector),取决于您的需求。
看起来ArrayList可能适合你。
List
是集合API的一部分,因此具有丰富的功能,因此在我预先知道大小的情况下,我会在这种情况下使用它。更不用说您不应该在List
中混合类型。 - obataku