编写一个学生管理类,添加学生(学号唯一)、删除学生、查看学生信息,使用List集合实现

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

public class StudentManager {
	private static Scanner sc;
	private static List<Student2> list;
	static{
		sc = new Scanner(System.in);
		list = new ArrayList<>();
	}
	//main
	public static void main(String[] args) {
		//while循环 break loop; 退出
		loop: while (true) {
			System.out.println("-----欢迎使用学生管理系统-----");
			System.out.println("1、添加学生信息");
			System.out.println("2、查看学生信息");
			System.out.println("3、删除学生信息");
			System.out.println("4、退出管理系统");
			System.out.println("请输入你的选择:");
			int n = sc.nextInt();
			//switch执行  键盘读入的数
			switch (n) {
			case 1:
				System.out.println("添加学生信息");
				addstudent();
				break;
			case 2:
				System.out.println("查看学生信息");
				showstudent();
				break;
			case 3:
				System.out.println("删除学生信息");
				deletestudent();
				break;
			case 4:
				break loop;
			default:
				System.out.println("请重新输入");
				break;
			}
			System.out.println();
		}
	    System.out.println("退出!");
	}
	//删除学生
	private static void deletestudent() {
		//学号删除
		System.out.println("请输入删除的学生学号:");
		String id = sc.next();
		//用增强for循环,不能修改;
		for (int i = 0; i < list.size(); i++) {
			Student2 s = list.get(i); //返回列表中指定位置的元素
			if (s.getId().equals(id)) { //equals比较
				list.remove(s);  //删除列表中指定位置的元素
			}
		}
	}
	//查看所有元素
	private static void showstudent() {
		System.out.println("学号\t姓名\t性别\t年龄");
		//增强for循环 全部遍历
		for (Student2 s : list) {
			System.out.println(s.getId() + "\t" + s.getName() 
			+ "\t" +s.getGender() + "\t" + s.getAge());
		}
	}
	//添加学生
	private static void addstudent() {
		System.out.println("请输入学生学号:");
		String id = sc.next();
		//判断id是否已经存在  增强for循环遍历
		for (Student2 s : list) {
			//equals方法  
			while (s.getId().equals(id)) {
				System.out.println("学号已经存在,请重新输入");
				id = sc.next(); //存在重新输入
			}
		}
		System.out.println("请输入学生姓名:");
		String name = sc.next();
		System.out.println("请输入学生性别:");
		String gender = sc.next();
		System.out.println("请输入学生年龄:");
		int age = sc.nextInt();
		Student2 student = new Student2(id, name, gender, age);
		list.add(student); //添加学生对象
	}
	
}
//Student2类 
class Student2{
	private String id;
	private String name;
	private String gender;
	private int age;
	
	public Student2() {}
	
	public Student2(String id, String name, String gender, int age) {
		super();
		this.id = id;
		this.name = name;
		this.gender = gender;
		this.age = age;
	}
	
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getGender() {
		return gender;
	}
	public void setGender(String gender) {
		this.gender = gender;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	
	public String toString() {
		return "Student [id=" + id + ", name=" + name + ", gender=" + gender + ", age=" + age + "]";
	}
}

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值