learn equals() and hashcode()
enum and arraylist