//录入
private void input(){
System.out.println("请输入学号:");
String num = scanner.next();
System.out.println("请输入姓名:");
String name = scanner.next();
System.out.println("请输入年龄:");
int age = scanner.nextInt();
System.out.println("请输入成绩:");
int cj = scanner.nextInt();
//新建一个person对象,把属性存进去
Person p = new Person();
p.setAge(age);
p.setCj(cj);
p.setName(name);
p.setNum(num);
for(Person per : array){
if( array.size() != 0 ){
if(p.equals(per)){
System.out.println("该学员已经存在,请重新录入!");
input();
}
}
}
array.add(p);
System.out.println("录入成功");
start();
}
//查询
private void inqure(){
System.out.println("请输入学号:");
String num = scanner.next();
Person person = null;
for(Person p : array){
if(p.getNum().equals(num)){
person = p;
break;
}
}
if(person!=null){
System.out.println("学号\t"+ "姓名\t" + "年龄\t" + "成绩\t" );
System.out.println(person.getNum()+"\t"+person.getName()+"\t"+person.getAge()+"\t"+person.getCj());
}else{
System.out.println("该学员不存在!");
start();
}
start();
}
//删除
private void delete(){
System.out.println("请输入学号:");
String num = scanner.next();
Person per = null;
for(Person p : array){
if(p.getNum().equals(num)){
System.out.println("学号\t"+ "姓名\t" + "年龄\t" + "成绩\t" );
System.out.println(p.getNum()+"\t"+p.getName()+"\t"+p.getAge()+"\t"+p.getCj());
per = p;
}
}
array.remove(per);
System.out.println("删除成功!");
start();
}
简单的学生管理系统。
其中录入判断对象是否重复,在这个foreach循环里判断,要求不允许有相同的对象,所以这个if判断放在for循环里,遇到第一个相同的就输出“相同”。
在查询中,输入学号查询对象,要把整个for循环走完再判断是否有相同的。则在for循环前就建一个接收对象,把查询结果赋给此对象,然后在for循环外面进行结果判断。
for循环嵌套if循环时,if循环即使得到自己的结果,for循环依旧会继续走下去,直到里面的对象比对完。
总结: 学会用接收对象接收结果,在进行判断。
学会根据实际情况判断想要得到的结果放在for循环里或者外。
用foreach在ArrayList集合取对象时,后面直接跟集合名。把集合当一个数组来看。
本文介绍了一个简单的学生管理系统,包括学生信息的录入、查询和删除功能。详细解释了如何通过控制台输入学号、姓名、年龄和成绩来创建学生对象,并检查系统中是否存在重复的学号以避免覆盖原有信息。此外,提供了查询特定学生信息的方法,以及删除指定学生记录的操作。通过使用集合数据结构和面向对象编程概念,实现了一个基本的学生信息管理应用。

被折叠的 条评论
为什么被折叠?



