【Java-31】班级、学生、分数问题(map、泛型、迭代器遍历综合应用)

若干学生,属性有学号,班级号,成绩,若干班级号,属性有班级号,总分

package calss_student;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class mainFunc {

	List<Student> list = new ArrayList<Student>();

	//初始化学生
	public void creat_student() {
		list.add(new Student("張三", 80, 1501, 151));// 姓名,学号,班级号
		list.add(new Student("李四", 87, 1502, 154));
		list.add(new Student("比比", 76, 1503, 151));
		list.add(new Student("跟女", 88, 1504, 154));
		list.add(new Student("热风", 90, 1506, 153));

	}

	public static void main(String[] args) {
		mainFunc mainfunc = new mainFunc();
		mainfunc.creat_student();
		//mainfunc.creat_classroom();
		Map<Integer, Class_room> map = new HashMap<Integer, Class_room>();

		for (int i = 0; i < (mainfunc.list).size(); i++) {
			if (!map.containsKey(mainfunc.list.get(i).getCno())) {// 不含有
				Class_room c = new Class_room(mainfunc.list.get(i).getCno());
				map.put(mainfunc.list.get(i).getCno(), c);
				c.list.add(mainfunc.list.get(i));
				c.setScroe_sum(mainfunc.list.get(i).getScreo());
			} else {// 含有这个班级那么把
				Class_room c = map.get(mainfunc.list.get(i).getCno());
				c.list.add(mainfunc.list.get(i));
				c.setScroe_sum(mainfunc.list.get(i).getScreo());
			}
		}

		Set<Integer> set = map.keySet();
		Iterator<Integer> iter = set.iterator();
		while (iter.hasNext()) {
			Integer Cno = iter.next();
			Class_room cc = map.get(Cno);
			System.out.println("班级号:" + cc.getCno() + "  总分:"
					+ cc.getScroe_sum());

		}
	}
}

学生类

package calss_student;

public class Student {
	private String stu_name;
	private int screo;
	private int sno;
	private int cno;
	
	public Student(String stu_name, int screo, int sno, int cno) {
		super();
		this.stu_name = stu_name;
		this.screo = screo;
		this.sno = sno;
		this.cno = cno;
	}

	public String getStu_name() {
		return stu_name;
	}

	public void setStu_name(String stu_name) {
		this.stu_name = stu_name;
	}

	public int getScreo() {
		return screo;
	}

	public void setScreo(int screo) {
		this.screo = screo;
	}



	public int getSno() {
		return sno;
	}

	public void setSno(int sno) {
		this.sno = sno;
	}

	public int getCno() {
		return cno;
	}

	public void setCno(int cno) {
		this.cno = cno;
	}

}

班级类

package calss_student;

import java.util.ArrayList;
import java.util.List;

public class Class_room {
private int cno;
private int scroe_sum;

List<Student> list;


public Class_room(int cno) {
	list=new ArrayList<Student>();
	this.cno = cno;
}

public int getCno() {
	return cno;
}

public void setCno(int cno) {
	this.cno = cno;
}

public int getScroe_sum() {
	return scroe_sum;
}

public void setScroe_sum(int scroe_sum) {
	this.scroe_sum += scroe_sum;
}

	
}

猜你喜欢

转载自blog.csdn.net/weixin_42034217/article/details/86531710