Знаю, что код пока не готов. Но вот какой возник вопрос. Решаю в IDEA, она ругается на строчку 24, ниже привожу скрин.
Правильно ли я понимаю, что она ругается из-за того, что оператор || предполагает, что оба условия могут быть true, а из-за того, что я проверяю два взаимоисключающих условия, то не могу использовать оператор || и мне нужно или разнести проверку в разные if, либо использовать исключающее ИЛИ | ?
![]()

package com.javarush.task.pro.task10.task1010;
import java.util.Objects;
/*
Два айфона
*/
public class Iphone {
private String model;
private String color;
private int price;
public Iphone(String model, String color, int price) {
this.model = model;
this.color = color;
this.price = price;
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
} else if ((obj == null) || !(obj instanceof Iphone)) {
return false;
}
Iphone iphone = (Iphone) obj;
if (this.price != iphone.price) {
return false;
}
if (this.model != null && this.color != null) {
return (this.model.equals(iphone.model) && (this.color.equals(iphone.color)));
}
if (this.model == null && this.color == null) {
return iphone.model == null && iphone.color == null;
}
}
//напишите тут ваш код
public static void main(String[] args) {
Iphone iphone1 = new Iphone("X", "Black", 999);
Iphone iphone2 = new Iphone("X", "Black", 999);
System.out.println(iphone1.equals(iphone2));
}
}