class WrappedString {
  private String s;
  public WrappedString(String s) { this.s = s; }  public static void main(String[] args) {
     HashSet<Object> hs = new HashSet<Object>();     String s1 = new String("gg");
     String s2 = new String("gg");     hs.add(s1); 
     hs.add(s2);
     System.out.println(hs.size()); 
  } 
}输出为1class WrappedString {
  private String s;
  public WrappedString(String s) { this.s = s; }  public static void main(String[] args) {
     HashSet<Object> hs = new HashSet<Object>();
     WrappedString ws1 = new WrappedString("aardvark");
     WrappedString ws2 = new WrappedString("aardvark");     hs.add(ws1);
     hs.add(ws2);
     System.out.println(hs.size()); 
  } 
}输出为2   //??????why
为什么呢?