import java.util.Map; /** * 学员类 * @author JSKJ */ public class Student { private String name; private double scores; //分数 //空参构造方法 public Student() { super(); } //有参构造方法 public Student(String name, double scores) { super(); this.name = name; this.scores = scores; } //封装 public String getName() { return name; } public void setName(String name) { this.name = name; } public double getScores() { return scores; } public void setScores(double scores) { this.scores = scores; } }
import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set; /** * 测试学员类 * @author JSKJ * 集合的遍历Iterator Map泛型的使用 */ public class Test_Student { public static void main(String[] args) { Student stu1 = new Student("小明",29); Student stu2 = new Student("小王",43); Student stu3 = new Student("小李",78); Student stu4 = new Student("小赵",99); Student stu5 = new Student("小孙",63); //注意map的泛型的应用 Map<String,Student> stuMap = new HashMap<String,Student>(); //向集合里放数据 stuMap.put(stu1.getName(), stu1); stuMap.put(stu2.getName(), stu2); stuMap.put(stu3.getName(), stu3); stuMap.put(stu4.getName(), stu4); stuMap.put(stu5.getName(), stu5); //通过迭代器输出集合中的所有学员的信息 System.out.println("学员的成绩是:"); //获取map中的键值集合 Set stuKeys = stuMap.keySet(); Test_Student ts = new Test_Student(); ts.useIterator(stuKeys,stuMap); System.out.println("----------------------------------"); stu1.setScores(100); Set stuKeys1 = stuMap.keySet(); Test_Student ts1 = new Test_Student(); ts.useIterator(stuKeys1,stuMap); } public void useIterator(Set stuKeys,Map stuMap) { Iterator it = stuKeys.iterator(); while(it.hasNext()) { //Collection中的add方法对象一定是Object类型,所以都要强转 String key = (String)it.next(); Student stu = (Student)stuMap.get(key); System.out.println(key+":"+stu.getScores()); } } }
/** * 狗狗类 * @author JSKJ */ public class Dog { private String name; private String strain; //品种 //构造方法 public Dog() { super(); } public Dog(String name, String strain) { super(); this.name = name; this.strain = strain; } //封装 public String getName() { return name; } public void setName(String name) { this.name = name; } public String getStrain() { return strain; } public void setStrain(String strain) { this.strain = strain; } }
import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** * 测试类 狗狗对象集合 * @author JSKJ * List的泛型使用方法 Iterator遍历 增强for循环 */ public class Test_Dog { public static void main(String[] args) { Dog dog1 = new Dog("亚亚", "拉布拉多"); Dog dog2 = new Dog("菲菲", "拉布拉多"); Dog dog3 = new Dog("欧欧", "雪纳瑞"); Dog dog4 = new Dog("美美", "雪纳瑞"); List<Dog> dogList = new ArrayList<Dog>(); dogList.add(dog1); dogList.add(dog2); dogList.add(dog3); dogList.add(dog4); //用迭代器输出狗狗信息 System.out.println("迭代器遍历狗狗信息:"); Iterator it = dogList.iterator(); while (it.hasNext()) { Dog dog = (Dog) it.next(); System.out.println(dog.getName()+":"+dog.getStrain()); } //用增强for循环输出狗狗信息 System.out.println("用增强for输出狗狗信息:"); for (Dog dog : dogList) { System.out.println(dog.getName()+":"+dog.getStrain()); } } }