创建一个学生系统,实现一下功能; * 1:增加学生 * 2:显示学生 * 3:修改学生 * 4:删除学生 * 5:查找学生 * 6:退出程序 * 请输入选择(


/**
 * 要求:创建一个学生系统,实现一下功能;
 * 1:增加学生    
 * 2:显示学生
 * 3:修改学生    
 * 4:删除学生 
 * 5:查找学生 
 * 6:退出程序   
 *  请输入选择(1-6) 
 *  案例分析:首先创建一个学生类,输入学生的属性;
 *  使用集合(ArrayList)实现存储学生的信息;
 *  分方法实现各个功能
 */
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;


public class StudentClassDemo {


@SuppressWarnings("resource")
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
do {
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("         请输入选择(1-6)           ");
System.out.println("***************************");
int sc = scanner.nextInt();
if (sc < 1 || sc > 6) {
System.out.println("数字非法,必须在1-6之间");
} else {
switch (sc) {
case 1:
Student1.addStudent();
break;
case 2:
Student1.show();
break;


case 3:
Student1.setStudent();
break;


case 4:
Student1.removeStedent();
break;


case 5:
Student1.foundStudent();
break;

case 6:

system.out.println("已经安全退出");

System.exit(0);
break;
}
}
} while (true);
}


}


// 定义一个学生类
class Student {
private String name;
private int age;


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public int getAge() {
return age;
}


public void setAge(int age) {
this.age = age;
}


public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}


@Override
public String toString() {
return "Student [name=" + name + ", age=" + age + "]";
}
}


class Student1 {


static Scanner scanner = new Scanner(System.in);
static List<Student> list = new ArrayList<>();


public static void addStudent() {
System.out.println("请输入学生姓名");
String inputName1 = scanner.next();
if (list.equals(inputName1)) {
System.out.println("该学生已存在");


} else {
System.out.println("请输入学生年龄");
int inputAge1 = scanner.nextInt();
list.add(new Student(inputName1, inputAge1));
System.out.println("学生信息添加完成");
}
}


public static void show() {
System.out.println("------------学生信息如下-------------");
Iterator<Student> list11 = list.iterator();
while (list11.hasNext()) {
Student student = (Student) list11.next();
System.out.println(student);
}
}


public static void setStudent() {
// 添加标志位,用来标志是否存在此学生姓名,默认不存在
boolean flag = false;
System.out.println("------------输入想要修改人的名字-------------");
String inputName3 = scanner.next();
for (int i = 0; i < list.size(); i++) {
Student student3 = list.get(i);
//创建一个学生对象并把集合内的所有元素输出查看一下
if (student3.getName().equals(inputName3)) {
//判断一下输入的名字是否相同
flag = true;// 说明存在此学生
System.out.println("原来信息:" + student3);
//输出原来学生的信息
System.out.println("请输入修改后的名字: ");
String input = scanner.next();
student3.setName(input);//修改学生的名字
System.out.println("输入年龄:");
int age3 = scanner.nextInt();//修改学生的年龄
student3.setAge(age3);
System.out.println("修改后信息:" + student3);
}
}
if (!flag) {
System.out.println("不存在此学生姓名,请重新输入");
}
}


public static void removeStedent() {
// 添加标志位,用来标志是否存在此学生姓名,默认不存在
boolean flag4 = false;
System.out.println("删除学生,请输入您的姓名");
System.out.println("输入姓名");
String inputName4 = scanner.next();
System.out.println("原来集合数量:" + list.size());
for (int i = 0; i < list.size(); i++) {
//使用for循环遍历一下
Student student3 = list.get(i);
if (student3.getName().equals(inputName4)) {
flag4 = true;
list.remove(i);//移除对应的元素
System.out.println("移除学生信息成功,现在集合数量:" + list.size());
}


}
if (!flag4) {
System.out.println("不存在此学生姓名,请重新输入");
}
}


public static void foundStudent() {


// 添加标志位,用来标志是否存在此学生姓名,默认不存在
boolean flag5 = false;
System.out.println("查找学生,请输入您的姓名");
System.out.println("输入姓名");
String name5 = scanner.next();
for (int i = 0; i < list.size(); i++) {
Student student3 = list.get(i);
if (student3.getName().equals(name5)) {
flag5 = true;
System.out.println("学生已找到,信息为:" + student3);
break;
// 如果当前索引处的学生信息为已找到的学生信息,则不再继续遍历后续学生信息
}


}
if (!flag5) {
System.out.println("不存在此学生姓名,请重新输入");
}
}

}

运行结果(仅供参考)















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值