【发布时间】:2021-02-12 19:08:25
【问题描述】:
在我的项目中,我有一个简单的函数来计算可迭代的长度(因为我认为没有简单的方法可以得到它?不接受 .size() 或 .length()?)这是代码:
public int getIterableSize(Iterable<User> users){
int size = 0;
for(User user : users){
size++;
}
return size;
}
我还使用 Sonarqube 来保持我的代码质量,我得到以下关于此函数的代码气味:
删除这个未使用的“用户”局部变量。
一定有一种简单的方法可以摆脱这种情况,对吧?也许是 for 循环的替代方案,也许是 iterable 提供的不同功能?
【问题讨论】:
-
你的函数可以这样返回。
return users.stream().count(); -
@PandeyAmit iterable 似乎没有 stream() 的功能
-
users是哪种类型? -
@EldarB。这是一个可迭代的
-
这能回答你的问题吗? Get size of an Iterable in Java
标签: java for-loop sonarqube iterable unused-variables