gpt4 book ai didi

java - 迭代集合时检查可为空性

转载 作者:行者123 更新时间:2023-12-02 14:33:38 27 4
gpt4 key购买 nike

哪个更好?

List list = ... //get list from somewhere

for (int i=0; list != null && i < list.size(); i++){
// ...
}

还是?

List list = ... //get list from somewhere


if (list != null){
for (int i = 0; i < list.size(); i++){
// ...
}
}

我从这里得到了这个想法:Scala or Java? Exploring myths and facts

最佳答案

更好是什么意思?更可读的代码,还是更高效的代码?不管怎样,我不喜欢你的两个建议。

当我必须使用一个返回 List 的方法时,但可能返回 null (并且我无法更改该方法的源代码以返回空 List 代替)这就是我所做的:

List list = ... // get list from somewhere
if (list == null) {
list = Collections.emptyList();
}
for (int i = 0; i < list.size(); i++) {
// ...
}

恕我直言,这在可读性、性能方面获胜,并避免了代码的深度嵌套。

关于java - 迭代集合时检查可为空性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14344326/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com