Sonarqube抱怨for循环中未使用的变量

问题描述

在我的项目中,我有一个简单的函数来计算可迭代对象的长度(因为我不认为有一种简单的方法获取它?没有接受.size().length()吗?)这是代码

public int getIterableSize(Iterable<User> users){
        int size = 0;

        for(User user : users){
            size++;
        }

        return size;
    }

我还使用Sonarqube来保持代码质量,并得到有关此功能的以下代码气味:

删除此未使用的“用户”局部变量。

必须有一种简单的方法来摆脱这种权利?也许是for循环的替代方法,也许是iterable提供的不同功能

解决方法

您可以使用@SuppressWarnings("unused")对其进行注释。

任何一种方法:

@SuppressWarnings("unused")
public int getIterableSize(Iterable<User> users){
    int size = 0;

    for(User user : users){
        size++;
    }

    return size;
}

或变量:

public int getIterableSize(Iterable<User> users){
    int size = 0;

    for(@SuppressWarnings("unused") User user : users){
        size++;
    }

    return size;
}

各种IDE可以自动提供这两个修复程序。