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());
}
}
}