老师我的班级类中的display方法为什么显示不出来学生信息啊?

老师我的班级类中的display方法为什么显示不出来学生信息啊?

package studentmanagement;

public class Student {
	private String stuNum;
	private String stuName;
	private float math;
	private float chinese;

	/**
	 * 学生类无参构造方法
	 */
	public Student() {
		this(null, null);
	}

	/**
	 * 学生类带参构造方法
	 * 
	 * @param stuNum  学号
	 * @param stuName 姓名
	 * @param math    数学成绩
	 * @param chinese 语文成绩
	 */
//	public Student(String stuNum, String stuName, float math, float chinese) {
//		this.setStuNum(stuNum);
//		this.setStuName(stuName);
//		this.setMath(math);
//		this.setChinese(chinese);
//	}
	/**
	 * 学生类带参构造方法
	 * 
	 * @param stuNum  学号
	 * @param stuName 姓名
	 */
	public Student(String stuNum, String stuName) {
		this.setStuNum(stuNum);
		this.setStuName(stuName);
	}

	public String getStuNum() {
		return stuNum;
	}

	public void setStuNum(String stuNum) {
		this.stuNum = stuNum;
	}

	public String getStuName() {
		return stuName;
	}

	public void setStuName(String stuName) {
		this.stuName = stuName;
	}

	public float getMath() {
		return math;
	}

	public void setMath(float math) {
		this.math = math;
	}

	public float getChinese() {
		return chinese;
	}

	public void setChinese(float chinese) {
		this.chinese = chinese;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + Float.floatToIntBits(chinese);
		result = prime * result + Float.floatToIntBits(math);
		result = prime * result + ((stuName == null) ? 0 : stuName.hashCode());
		result = prime * result + ((stuNum == null) ? 0 : stuNum.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj) {
			return true;
		}
		if (obj.getClass() == Student.class) {
			Student stu = (Student) obj;
			return (stu.getStuNum().equals(stuNum) && (stu.getStuName().equals(stuName)) && (stu.getMath() == math)
					&& (stu.getChinese() == chinese));
		}
		return false;
	}

	@Override
	public String toString() {
		return "学生信息: [学号:" + getStuNum() + ", 姓名:" + getStuName() + "]";
	}

}

package studentmanagement;

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

public class Banji {
	private String classId;
	private String className;
	List<Student> mainStuList;

	/**
	 * 班级类无参构造方法
	 */
	public Banji() {
		this(null, null);
	}

	/**
	 * 班级类带参构造方法
	 * 
	 * @param classId   班级编号
	 * @param className 班级名称
	 */
	public Banji(String classId, String className) {
		this.setClassId(classId);
		this.setClassName(className);
		mainStuList = new ArrayList<Student>();
	}

	public String getClassId() {
		return classId;
	}

	public void setClassId(String classId) {
		this.classId = classId;
	}

	public String getClassName() {
		return className;
	}

	public void setClassName(String className) {
		this.className = className;
	}

	public List<Student> getStuList() {
		return mainStuList;
	}

	public void setStuList(List<Student> stuList) {
		this.mainStuList = stuList;
	}

	/**
	 * 向班级中添加学生的方法
	 * 
	 * @param stu 学生
	 */
	public void addStudent(Student stu) {
		boolean flag = false;
		for (Student stu1 : mainStuList) {
			if (stu1.equals(stu)) {
				flag = true;
				break;
			}
			if (flag) {
				System.out.println("该学生已存在,无需重复添加!");
			} else {
				mainStuList.add(stu);
			}
		}
	}

	/**
	 * 根据学号查询学生信息的方法
	 * 
	 * @param stuNum 学号
	 * @return
	 */
	public Student searchStudentByNum(String stuNum) {
		Student stu = null;
		for (Student stu1 : mainStuList) {
			if (stu.getStuNum().equals(stuNum)) {
				stu = stu1;
				break;
			}
		}
		return stu;
	}

	/**
	 * 登记学生语文成绩的方法
	 * 
	 * @param stuNum  学号
	 * @param chinese 语文成绩
	 */
	public void insertChineseScore(String stuNum, float chinese) {
		Student stu = searchStudentByNum(stuNum);
		if (stu == null) {
			System.out.println("没有找到学号为:" + stuNum + "的学生!");
		} else {
			mainStuList.add(stu);
			System.out.println("该学生语文数学成绩登记成功!");
		}
	}

	/**
	 * 登记学生数学成绩的方法
	 * 
	 * @param stuNum 学号
	 * @param math   数学成绩
	 */
	public void insertMathScore(String stuNum, float math) {
		Student stu = searchStudentByNum(stuNum);
		if (stu == null) {
			System.out.println("没有找到学号为:" + stuNum + "的学生!");
		} else {
			mainStuList.add(stu);
			System.out.println("该学生数学成绩登记成功!");
		}
	}

	/**
	 * 删除学生信息的方法
	 * 
	 * @param stuNum 学号
	 */
	public void deleteStudent(String stuNum) {
		Student stu = searchStudentByNum(stuNum);
		if (stu != null) {
			mainStuList.remove(stu);
			System.out.println("该学生信息删除成功!");
		} else {
			System.out.println("没有找到学号为:" + stuNum + "的学生!");
		}
	}

	/**
	 * 显示所有学生信息的方法
	 */
	public void displayAllStudent() {
		System.out.println("班级中的所有学生信息为:");
		for (Student stu : mainStuList) {
			System.out.println(stu);
		}
	}
}

package studentmanagement;

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

public class TestDemo {
	/**
	 * 主菜单
	 */
	public void mainMenu() {
		System.out.println("*************************************");
		System.out.println("              **主菜单***             ");
		System.out.println("              1--班级管理          ");
		System.out.println("              2--学校管理            ");
		System.out.println("              0--退出                 ");
		System.out.println("*************************************");
	}

	/**
	 * 学校管理菜单
	 */
	public void schoolMenu() {
		System.out.println("*********************************************************");
		System.out.println("              **学校管理***             ");
		System.out.println("              1--创建班级          ");
		System.out.println("              2--删除班级          ");
		System.out.println("              3--通过班级名称查询班级信息          ");
		System.out.println("              4--对各班语文成绩按平均分由大到小排序          ");
		System.out.println("              5--对各班数学成绩按平均分由大到小排序          ");
		System.out.println("              6--显示所有班级名称        ");
		System.out.println("              9--返回上一级菜单          ");
		System.out.println("*********************************************************");
	}

	/**
	 * 班级管理菜单
	 */
	public void banjiMenu() {
		System.out.println("*********************************************************");
		System.out.println("              **班级管理***             ");
		System.out.println("              1--添加学生到主学生列表          ");
		System.out.println("              2--添加学生到普通班级          ");
		System.out.println("              3--通过学号查询学生信息          ");
		System.out.println("              4--输入班级的语文成绩         ");
		System.out.println("              5--输入班级的数学成绩         ");
		System.out.println("              6--删除学生信息         ");
		System.out.println("              7--显示所有学生信息          ");
		System.out.println("              9--返回上一级菜单          ");
		System.out.println("*********************************************************");
	}

	/**
	 * 班级的测试方法
	 */
	public void testBanJi() {
		Student stu1 = new Student("S0001", "Lily");
		Student stu2 = new Student("S0002", "Kay");
		Student stu3 = new Student("S0003", "Ning");
		Student stu4 = new Student("S0004", "Ning");
		Student stu5 = new Student("S0004", "Ning");
//		System.out.println(stu3.equals(stu5));
//		System.out.println(stu4.equals(stu5));

		Banji mainStuList = new Banji("0000", "AllClass");
		mainStuList.addStudent(stu1);
		mainStuList.addStudent(stu2);
		mainStuList.addStudent(stu3);
		mainStuList.displayAllStudent();
	}

	/**
	 * 学校的测试方法
	 */
	public void testSchool() {
	}

	/**
	 * 主流程
	 */
	public void test() {
	}

	public static void main(String[] args) {
		TestDemo td = new TestDemo();
		td.testBanJi();

	}

}

效果图如下:

http://img1.sycdn.imooc.com//climg/5ef1b3a1093c1fdd05460252.jpg

http://img1.sycdn.imooc.com//climg/5ef1b3a20991864b08820646.jpg

http://img1.sycdn.imooc.com//climg/5ef1b3a309f532c908660386.jpg


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
Heijyu 提问者 2020-06-23 15:52:58

啊啊啊!!!!我知道哪里出错了!!!谢谢老师不用帮我看了!!!

  • 同学解决了就好,继续加油!祝学习愉快!
    2020-06-23 16:01:56
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师