gpt4 book ai didi

java - 识别数组列表中的自定义对象

转载 作者:行者123 更新时间:2023-11-29 03:25:38 25 4
gpt4 key购买 nike

我想检查对象 Ball 是否包含在 ArrayList 中。但是每次我通过循环时,结果都会给出错误的答案。但我已经将对象球放在 ArrayList 中。不能像这样完成:- someList.contains(new Point(x,y))

public class zbc {

ArrayList<Balls> balls;
public boolean somRandomFunction() {

if (balls.contains(new Ball(i, j, k))) {
System.out.println("-----------------true------------------");
break;
}
}

}

public class Ball {

private int row, col;

// this is actually just a integer value used
// by game to draw various distinct color
private int color;

public Ball(int row, int col, int color) {
this.row = row;
this.col = col;
this.color = color;
}

public int row() {
return row;
}

public int col() {
return col;
}

public int color() {
return color;
}

}

最佳答案

您应该在 Ball 中实现 equals。 Collection.contains 使用 equals。测试一下

boolean equals = new Ball(1,1,1).equals(new Ball(1,1,1))

它会返回错误

关于java - 识别数组列表中的自定义对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21213921/

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