1. 实现学员管理系统
数组的学员管理,要求对里面存储的学员姓名信息进行管理,可以对数据进行增加,删除,和查询的功能
源码如下:
import java.util.Scanner;
/**
* 数组的学员管理,要求对里面存储的学员姓名信息进行管理,
* 可以对数据进行增加,删除,和查询的功能
功能展示如下:
学员管理系统:
1.添加学员信息
2.删除学员信息
3.查询学员信息
4.退出
请输入您的选择:
*
* */
public class StudentSystem {
private static String[] names = new String[100];
public static void main(String[] args) {
do {
System.out.println("1.添加学员信息\n2.删除学员信息\n3.查询学员信息\n4.更改学员信息\n5.退出\n请输入您的选择");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
switch (num) {
case 1:
System.out.println("请输入要添加的学员姓名:");
String s = sc.next();
add(s);
break;
case 2:
System.out.println("请输入要删除的学员姓名:");
s = sc.next();
delete(s);
break;
case 3:
System.out.println("查询学员信息:");
queryAll();
break;
case 4:
System.out.println("请输入要更改的学员姓名:");
s = sc.next();
update(s);
break;
case 5:
System.out.println("退出成功。。");
return;
default:
System.out.println("输入有误。。");
break;
}
} while (true);
}
private static void update(String s) {
int index = panDuan2(s);
if(index==-1) {
System.out.println("要更改的学员不存在");
}else {
System.out.println("请输入更改后的学员姓名:");
Scanner sc1 = new Scanner(System.in);
String name = sc1.next();
int index2=panDuan2(name);
if(index2==-1) {
names[index]=name;
System.out.println("更改成功");
}else {
System.out.println("要更改的学员姓名已存在");
}
}
}
private static void delete(String name) {
int index = panDuan2(name);
if(index == -1) {
System.out.println("删除的学员不存在");
}else {
for(int i=index;i<names.length;i++) {
if(names[i]==null) {
break;
}
names[i] = names[i+1];
}
System.out.println("删除成功");
}
}
private static int panDuan2(String name) {
for(int i = 0;i<names.length;i++) {
if(names[i]==null) {
return -1;
}if(name.equals(names[i])) {
return i;
}
}
return -1;
}
private static void queryAll() {
for(String str:names) {
if(str==null) {
break;
}
System.out.println(str);
}
}
private static void add(String name) {
int index=panDuan(name);
if(index==-1) {
System.out.println("添加成功");
}else {
System.out.println("已存在,不能进行添加");
}
}
private static int panDuan(String name) {
for(int i = 0;i<names.length;i++) {
if(names[i]==null) {
names[i]=name;//存值
return -1;
}if(name.equals(names[i])) {
return i;//已存在
}
}
return -1;
}
}
运行效果: