Функция сравнения
Помогите не могу разобраться с функцией сравнения. Вот что мне нужно сделать: написать функцию сравнения, которую можно использовать для размещения товаров по порядку в соответствии с их номерами деталей. То есть номер детали, который находится позже в алфавитном порядке, больше, чем номер детали, который находится ранее в алфавитном порядке. Это мой код:
public class ProductType implements Comparable<ProductType> {
private String partnum;
private double price;
private int stock;
public ProductType(String partnum, double price, int stock) {
this.partnum = partnum;
this.price = price;
this.stock = stock;
}
public ProductType() {
partnum = "";
price = 0;
stock = 0;
}
public void setNum(String partnum) {
this.partnum = partnum;
}
public void setPrice(double price) {
this.price = price;
}
public void setStock(int stock) {
this.stock = stock;
}
public String getNum() {
return partnum;
}
public double getPrice() {
return price;
}
public int getStock() {
return stock;
}
public int compareTo(ProductType otherType) throws NullPointerExeption {
if (otherType == null)
throw new NullPointerException();
return (this.getNum().compareTo.otherType.getNum());
}
public String toString() {
String result = "" + this.getNum();
return result;
}
}
1 ответ
Изменить ваше заявление на возврат
return (this.getNum().compareTo.otherType.getNum());
в
return (this.getNum().compareTo(otherType.getNum()));
так как compareTo()
это метод.
перед звонком compareTo()
метод проверки
null != this.getNum()
в противном случае вы получите NPE.