I am doing a java project and I have this problem and I don't know how to fix it.
Classes in my project (simplified):
public class Item { private String itemID; private Integer price; public Integer getPrice() { return this.price; } } public class Store { private String storeID; private String address; } public class Stock { private Item item; private Store store; private Integer itemCount; public Integer getInventoryValue() { return this.item.getPrice() * this.itemCount; } }
Then I try to sort the ArrayList of Stock, so I create another class called CompareByValue
public class CompareByValue implements Comparator<Stock> { @Override public int compare(Stock stock1, Stock stock2) { return (stock1.getInventoryValue() - stock2.getInventoryValue()); }
}
When I try to run the program, it gives an error:
Exception in thread "main" java.lang.ClassCastException: stocks cannot be added to java.lang.Comparable
Does anyone know what happened?
java sorting exception comparable classcastexception
user2234225
source share