Здравствуйте, у меня есть программа, где вы размещаете плитки для строительства домов, а затем продаете дома. Я только хочу продать дома, если у здания есть дверь, по крайней мере, на одно окно. Мой ArrayList выглядит следующим образом:Java, как проверить, содержит ли объект в arraylist определенное значение
public static ArrayList<block> b = new ArrayList<block>();
каждый тип плитки имеет свой идентификатор. дверь плитка 1 и окна плитка 2 и стены плитка 3.
for(int i = 0; i < play.b.toArray().length;i++){
if(play.b.contains(play.b.get(i).id == 1)){
cansell= true;
}else{
cansell= false;
}
}
Как я могу проверить, если объект в ArrayList содержит определенное значение, в этом случае значение 1.
здесь класс двери:
public class door extends block{
public cockpit(int x,int y,int rot){
this.x = x;
this.y = y;
this.rotate = rot;
r = new Rectangle(x - (int)play.camx,y - (int)play.camy,20,20);
id = 3;
}
public void tick(){
createCollisionRect();
if(Comp.mr && r.contains(new Point((Comp.mx) ,(Comp.my)))){
remove = true;
}
if(remove){
//play.gui.money +=800;
}
}
public void render(Graphics g){
Graphics2D g2 = (Graphics2D) g;
if (rotate == 0) {
ImageIcon i62 = new ImageIcon("res/tiles/cockpit.png");
img = i62.getImage();
g.drawImage(img, x - (int) play.camx, y - (int) play.camy,20,20, null);
}
if (rotate == 1) {
AffineTransform at = AffineTransform.getTranslateInstance(x, y);
at.rotate(Math.toRadians(90),10,10);
ImageIcon i62 = new ImageIcon("res/tiles/cockpit.png");
img = i62.getImage();
g2.drawImage(img,at, null);
}
if (rotate == 2) {
AffineTransform at = AffineTransform.getTranslateInstance(x, y);
at.rotate(Math.toRadians(180),10,10);
ImageIcon i62 = new ImageIcon("res/tiles/cockpit.png");
img = i62.getImage();
g2.drawImage(img, at, null);
}
if (rotate == 3) {
AffineTransform at = AffineTransform.getTranslateInstance(x, y);
at.rotate(Math.toRadians(-90),10,10);
ImageIcon i62 = new ImageIcon("res/tiles/cockpit.png");
img = i62.getImage();
g2.drawImage(img, at, null);
}
}
}
Так, если список содержит номера 1 и 2, он может быть продан? –
да, он может быть продан независимо от того, какие числа объекты в arryalist до тех пор, пока два из этих объектов имеют идентификатор 1 и 2 – user3929251
Вы пробовали 'if (list.contains (1) && list.contains (2)) '? –