/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package collectionexample; import java.util.Objects; /** * * @author denis */ public class Person implements Comparable{ public String name; public Integer phone; public Person(String name, Integer phone) { this.name = name; this.phone = phone; } @Override public String toString() { return "Person{" + "name=" + name + ", phone=" + phone + '}'; } @Override public int hashCode() { int hash = 3; hash = 37 * hash + Objects.hashCode(this.name); hash = 37 * hash + Objects.hashCode(this.phone); return hash; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final Person other = (Person) obj; if (!Objects.equals(this.name, other.name)) { return false; } if (!Objects.equals(this.phone, other.phone)) { return false; } if (!Objects.equals(this.hashCode(), other.hashCode())) { return false; } return true; } @Override public int compareTo(Person person) { int res = this.name.compareTo(person.name); if(res==0) res = this.phone.compareTo(person.phone); return res; } }