A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© liuxiaoye 中级黑马   /  2016-2-29 21:34  /  333 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

import java.util.HashMap;
import java.util.Set;
public class demo15 {
        /**
         * 11.題目:编写一个类,在main方法中定义一个Map对象(采用泛型),
         * 加入若干个对象,然后遍历并打印出各元素的key和value。
         */
        public static void main(String[] args) {
                HashMap<Integer, Person> map=new HashMap<Integer,Person>();
                Person p1=new Person("liu", 26);
                Person p2=new Person("zhao", 26);
                map.put(1, p1);
                map.put(2, p2);
                Set<Integer> keySet = map.keySet();
                for (Integer thisiInteger : keySet) {
                        Person thisPerson=map.get(thisiInteger);
                        System.out.println(thisPerson);
                }               
        }
}
public class Person {
private String name;
private int age;
Person(String name,int age){
         this.name=name;
         this.age=age;
}
         public void setName(String name){
                 this.name=name;
         }
         public String getName(){
                 return name;
         }
        public int getAge() {
                return age;
        }
        public void setAge(int age) {
                this.age = age;
        }
@Override
         public int hashCode(){
            final int prim=31;
                int result=1;
                result=prim*result+age;
                result=prim*result+((name==null)?0:name.hashCode());
                return result;
        }

   public boolean equals( Object obj){
          if(!(obj instanceof Person))
                  return false;
           Person other=(Person)obj;
          return  (this.name.equals(other.name))&&this.age==other.age;
   }
@Override
public String toString() {
        return "Person [name=" + name + ", age=" + age + "]";
   }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马