java - 从搜索数组的方法返回 boolean 值

标签 java arrays list for-loop boolean

在扫描列表的 for 循环期间满足条件时,有没有办法立即返回 boolean 值?

我在做这些事情时一直在使用这种“标志”方法。

this 引用的类是一个由多个 Point 对象组成的对象。

如果其 pointsCovered ArrayList 中的任何一个 Point 对象等于 Point p,则此方法返回 true code> 传递到方法中(如果对象包含输入点,因此方法名称)。

boolean containsPoint(Point p) {

    boolean flag = false;

    for (int i = 0; i < this.length; i++)
    {
        if (pointsCovered.get(i).equals(p)) {
            flag = true;
            break;
        }
    }

    return flag;
}

我通过搜索找不到类似的内容。

基本上我是在问是否有更好或标准的方法来做到这一点。

编辑:为了澄清起见,我使用了这个 flag 变量,因为我不知道在 for 循环中返回语句会终止循环并立即返回值。

干杯。

最佳答案

完全删除标志并尽快返回:

boolean containsPoint(Point p) {

    for (int i = 0; i < this.length; i++)
    {
        if (pointsCovered.get(i).equals(p)) {
            return true;
        }
    }

    return false;
}

关于java - 从搜索数组的方法返回 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50095799/

相关文章:

java - 有没有办法在另一个方法中使用实例变量?

java - 无法复制我的对象并更改值

python - 初始化空的 Python 数据结构

java - 如何使用多态性在java中制作不同类型的列表?

c# - 使用 List<string> 动态写入文件 : formatting issue

java - 什么是 NullPointerException,我该如何解决?

java - 如何从菜单项actionPerformed 打开JFileChooser?

javascript - 使用 innerHTML 无法输出完整的数字列表

python - 如何从数组中删除特定元素而不删除其以后出现的元素

javascript - angularjs数组拼接到另一个元素