2

我试图制作一种方法来告诉我我的数组是否包含任何重复的坐标,如果是,则将布尔值设置为 true,否则将其设置为 false。知道为什么它不断返回错误吗?

    public void check(){
    if(point[particle].equals(point) == true){
        check = true;
    } else {
        check = false;
    }
}

点 = 点数组

粒子 = 当前粒子

check = 我用来检查的布尔值

4

1 回答 1

2

查看这部分代码(根据您的if-statement 的条件):

point[particle].equals(point)

我认为这里发生了一些可变的阴影(或类似的东西)。point似乎是一个数组,但您正在测试该数组的成员与数组本身之间的相等性 - 这就是您不断得到false. 检查您的变量名称,看看您是否不小心为两个不同的变量使用了相同的名称。


作为说明,

if (condition == true) {
    check = true;
} else {
    check = false;
}

可以简化为

check = condition;
于 2012-10-13T22:52:52.763 回答