首页 > 编程语言 >java

java

时间:2024-08-24 15:15:55浏览次数:6  
标签:java String list System println id out

学生管理系统完整代码实现练习
代码示例:
import java.security.DrbgParameters.NextBytes;
import java.util.ArrayList;
import java.util.Scanner;
public class StudentSystem {
public static void main(String[] args) {
ArrayList list=new ArrayList();
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("5:退出");
System.out.println("请输入您的选择:");
Scanner sc =new Scanner(System.in);
String choose=sc.next();
switch (choose) {
case "1" -> addStudent(list) ;
case "2" -> deleteStudent(list);
case "3" -> updateStudent(list);
case "4" -> queryStudent(list);
case "5" -> {
System.out.println("退出");
break loop;
}
default -> System.out.println("没有这个选项");
}
}
}
public static void addStudent(ArrayList list){
Student s=new Student();
Scanner sc=new Scanner(System.in);
String id=null;
while (true) {
System.out.println("请输入学生id");
id = sc.next();
Boolean flag=contains(list, id);
if(flag) {
System.out.println("该id已经存在,请重新输入");
}else {
s.setId(id);
break;
}
}
System.out.println("请输入学生姓名");
String name=sc.next();
s.setName(name);
System.out.println("请输入学生年龄");
int age=sc.nextInt();
s.setAge(age);
System.out.println("请输入学生家庭住址");
String address=sc.next();
s.setAddress(address);
list.add(s);
System.out.println("添加成功");
}

public static void deleteStudent(ArrayList<Student> list){
	System.out.println("请输入要删除的学生id");
	Scanner sc=new Scanner(System.in);
	String id=sc.next();
	int index=getIndex(list, id);
	if(index>=0) {
		list.remove(index);
		System.out.println("删除成功");
	}else {
		System.out.println("id不存在");
	}
}

public static void updateStudent(ArrayList<Student> list){
	System.out.println("请输入要修改学生的id");
	Scanner sc=new Scanner(System.in);
	String id=sc.next();
	int index=getIndex(list, id);
	if(index==-1) {
		System.out.println("要修改的id"+id+"不存在,请重新输入");
		return;
	}
	Student stu=list.get(index);
	
	System.out.println("请输入学生姓名");
	String newname=sc.next();
	stu.setName(newname);
	
	System.out.println("请输入学生年龄");
	int newage=sc.nextInt();
	stu.setAge(newage);
	
	System.out.println("请输入学生地址");
	String newaddress=sc.next();
	stu.setAddress(newaddress);
	
	System.out.println("修改成功");
}

public static void queryStudent(ArrayList<Student> list){
	if(list.size()==0) {
		System.out.println("当前无学生信息");
		return;
	}
	System.out.println("id\t\t姓名\t年龄\t家庭住址");
	for (int i = 0; i < list.size(); i++) {
		Student stu=list.get(i);
		System.out.println(stu.getId()+"\t"+stu.getName()+"\t"+stu.getAge()+"\t"+stu.getAddress());
	}
}
public static boolean contains(ArrayList<Student> list,String id) {
	for(int i=0;i<list.size();i++) {
		Student student=list.get(i);
		String sid=student.getId();
		if(sid.equals(id)) {
			return true;
		}
	}
	return false;
}
public static int getIndex(ArrayList<Student> list,String id) {
	for (int i = 0;i<list.size() ; i++) {
		Student stu=list.get(i);    //得到学生对象
		String sid=stu.getId();    //得到id
		if(sid.equals(id)) {    //进行比较
			return i;
		}
	}
	return -1;
}

}

javabean:
public class Student {
private String id;
private String name;
private int age;
private String address;

public Student(){
}

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

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 int getAge() {
	return age;
}

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

public String getAddress() {
	return address;
}

public void setAddress(String address) {
	this.address = address;
}

}

标签:java,String,list,System,println,id,out
From: https://www.cnblogs.com/WMKQF/p/18376375

相关文章

  • [0681]基于JAVA的医疗器械销售智慧管理系统的设计与实现
    毕业设计(论文)开题报告表姓名学院专业班级题目基于JAVA的医疗器械销售智慧管理系统的设计与实现指导老师(一)选题的背景和意义在当前信息化社会背景下,医疗器械行业的管理面临着日益复杂的挑战。随着医疗技术的飞速发展和市场需求的不断变化,医疗器械销......
  • [0677]基于JAVA的医疗养老收费智慧管理系统的设计与实现
    毕业设计(论文)开题报告表姓名学院专业班级题目基于JAVA的医疗养老收费智慧管理系统的设计与实现指导老师(一)选题的背景和意义选题背景与意义:随着我国社会老龄化进程的加快以及医疗保障体系改革的深入,构建高效、便捷、精准的医疗养老收费管理系统成为......
  • Java开发-面试题-0019-static 关键字平时用过吗,怎么用的,有什么好处,原理是什么
    更多内容欢迎关注我(持续更新中,欢迎Star✨)Github:CodeZeng1998/Java-Developer-Work-Note(技术)微信公众号:CodeZeng1998(生活)微信公众号:好锅其他平台:CodeZeng1998、好锅static关键字平时用过吗,怎么用的,有什么好处,原理是什么static修饰范围变量方法代码快内部类用法......
  • Java面试题--JVM大厂篇之JVM 大厂面试题及答案解析(2)
           ......
  • 基于nodejs+vueJava在线教育系统[程序+论文+开题]-计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着互联网技术的迅猛发展和教育理念的革新,在线教育已成为现代教育体系中的重要组成部分。特别是在编程语言学习领域,如Java,其复杂性和实用性要求学习者能够......
  • 基于nodejs+vuejava学习平台[程序+论文+开题]-计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着互联网技术的飞速发展和在线教育市场的蓬勃兴起,传统的教育模式正经历着深刻的变革。在这个数字化时代,构建一个高效、便捷、互动性强的学习平台成为了提......
  • Java计算机毕业设计学生综合成绩测评系统(开题报告+源码+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景:在当今教育信息化快速发展的时代背景下,学生综合成绩测评系统已成为高等教育管理不可或缺的一部分。随着学生数量的增长、课程体系的复杂化以及教育评......
  • Java计算机毕业设计校园资源共享平台(开题报告+源码+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着高等教育规模的持续扩大,校园内资源分配不均与闲置浪费现象日益凸显。图书资料、学习用品、实验器材乃至生活物品等,在学生们手中往往难以实现高效......
  • Java计算机毕业设计校园疫情防控系统(开题报告+源码+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景在全球新冠疫情持续影响的背景下,校园作为知识传播与人才培养的重要场所,其疫情防控工作显得尤为重要。随着复学复课的逐步推进,如何科学、高效地管理校......
  • Java计算机毕业设计学术助手开发(开题报告+源码+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景:随着信息技术的飞速发展,学术研究领域正经历着前所未有的变革。面对海量且日益增长的学术资源,科研工作者在寻找、筛选及整合相关信息时面临着巨大挑战......