黑马程序员技术交流社区

标题: 为什么这个值出来了键出不来呢,原因在哪啊,求帮助 [打印本页]

作者: shilu    时间: 2015-10-12 15:47
标题: 为什么这个值出来了键出不来呢,原因在哪啊,求帮助
为什么这个值出来了键出不来呢,原因在哪啊,求帮助
import java.util.*;
/*
2、请编写程序,存储自定义对象到HashMap集合中,并采用两种方式遍历
*/
   
class Demo{
    public static void main(String[] args){
       Students1=newStudent("lisi",20);
       Students2=newStudent("wangwu",22);
       HashMap<Student,String>hm=newHashMap<Student,String>();
       hm.put(s1,"01");
       hm.put(s2,"02");
       Set<Map.Entry<Student,String>> entry=hm.entrySet();
       Iterator<Map.Entry<Student,String>> it=entry.iterator();
       while(it.hasNext()){
           Map.Entry<Student,String> m=it.next();
           Studentkey=m.getKey();
           Stringvalue=m.getValue();
           System.out.println(key+"  "+value);
       }
    }
}
class Student {
    private String name;
    public String getName() {
       return name;
    }
    public void setName(String name) {
       this.name = name;
    }
    public int getAge() {
       return age;
    }
    public void setAge(int age) {
       this.age = age;
    }
    private int age;
    Student(Stringname,intage){
       this.name=name;
       this.age=age;
    }
    public int hashCode(){
       final int p=31;
       int result=1;
       result=p*result+age;
       result=p+result+((name==null)?0:name.hashCode());
       return result;
    }
    public boolean equals(Object obj)
    {
       if(!(obj instanceof Student))
           throw new ClassCastException("类型不匹配");
       Studentstu=(Student)obj;
       return this.name.equals(stu.name)&&this.age==stu.age;
      
    }
    public int CompareTo(Student s){
       int num=new Integer(this.age).compareTo(new Integer(s.age));
       if(num==0){
           return new Integer(this.name).compareTo(new Integer(s.name));
       }
       return num;
    }
}

作者: zzh1026    时间: 2015-10-12 17:36
太乱还长,不看
作者: 疯狂的小豆丁    时间: 2015-10-17 12:56
Student是个对象,你这样取只能直接取出内存地址, System.out.println(key.getName()+":"+key.getAge()+"  "+value);你试试




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2