All pastes #618874 Raw Edit

Proves What?

public java v1 · immutable
·published 2007-07-14 07:42 UTC
rendered paste body
import java.util.HashSet;public class Test {    public static void main(String[] args) {        HashSet<JObject> objects = new HashSet<JObject> ();        JObject one = new JObject ("same", 1);        JObject two = new JObject ("same", 1);        System.out.println (one.equals (two));        System.out.println (two.equals (one));        objects.add (one);        objects.add (two);                System.out.println ("objects.size() = " + objects.size ());    }}class JObject {    private String name;     private int age;    public JObject() {        this("Unknown", 0);    }    public JObject(String name) {        this(name, 0);    }    public JObject(String name, int age) {        this.name = name;        this.age = age;    }    public String getName() {        return this.name;    }    public int getAge() {        return this.age;    }    public void setName(String name) {        this.name = name;    }    public void setAge(int age) {        this.age = age;    }    public boolean equals(JObject obj) {        return (this.compareTo(obj) == 0);    }    public int compareTo(JObject obj) {        int comparison = 0;        if(this.age == obj.age) {            // Could just as equally be case sensative... doesn't matter.            comparison = this.name.compareToIgnoreCase(obj.name);        } else {            if(this.age < obj.age) {                comparison = -1;            } else {                comparison = 1;            }        }        return comparison;    }    public String toString() {        return ("JObject( name = '" + this.name + "', age = " + this.age + " )");    }}