用Java中的新运算符初始化ArrayList?

Pradeep:

ArrayList用Java 初始化的最佳做法是什么

如果我使用new运算符初始化ArrayList,则ArrayList默认情况下将为10个存储桶分配内存。这对性能有很大影响。

我不知道,也许我错了,但是在我看来ArrayList,如果我确定尺寸,我应该通过提及尺寸来创建一个

达菲:

这对性能有很大影响。

我不会担心“性能下降”。用Java创建对象非常快。您不太可能测量性能差异。

如果知道的话,一定要使用尺寸。如果您不这样做,则无论如何都无需做任何事情。

您在这里进行的这种思考称为“过早优化”。唐纳德·克努斯(Donald Knuth)说,这是万恶之源。

更好的方法是先使代码工作,然后再使其快速运行。使用现有数据进行优化,以告诉您代码在哪里运行缓慢。不要猜测-您可能错了。您会发现您几乎不知道瓶颈在哪里。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Java中初始化没有新运算符的对象

用相等的运算符初始化对象

用->运算符初始化结构指针

用+运算符Java进行字符串初始化

如何使用新运算符在表达式中聚合初始化STL容器?

直接初始化中的转换运算符

使用和不使用新运算符时数组初始化的差异

用Diamond运算符进行双花括号初始化(匿名内部类)

为什么用三元运算符初始化数组是非法的?

一元加运算符在指针初始化中有什么用?

用三元运算符初始化结构

逗号作为变量初始化中的分隔符(不作为运算符)

使用逗号运算符初始化基类

运算符“?” 初始化期间无法应用

Javascript:||的含义 初始化var时的运算符

如何重载 [] 运算符以初始化对象

使用Diamond运算符进行Java对象初始化糟糕的Javac编译时性能

Java 7 Diamond运算符和派生类的初始化

在三元运算符中初始化捕获lambda

数组初始化中的三元运算符

静态数组初始化中的三元运算符未按预期工作

常量初始化程序中带有逗号运算符的明显 GCC 错误

重载>>运算符,并使用自定义类型的初始化列表初始化

为什么 C# 中的局部变量必须在 If 运算符条件中初始化和强制转换后进行初始化?

使用文字初始化的状态数组和使用 Solidity 中的“new”运算符初始化的另一个状态数组之间的区别?

使用'Implicit'类运算符初始化包含动态数组的Delphi Record的初始化

为什么初始化没有调用赋值运算符

条件运算符用于初始化两个变量之一

在JPQL中使用new运算符初始化构造函数