import java.util.*;
/*
使用数组存储一批学生的姓名,并实现以下功能:
(1)新增:从键盘输入学生的姓名,添加到数组中。
(2)查找:从键盘输入要查找的学生姓名,在数组中进行查找,并返回查找的结果。
(3)修改:从键盘输入要修改的学生姓名及修改之后的姓名,在数组中进行修改,返回修改的结果。
(4)删除:从键盘输入要删除的学生姓名,在数组中进行删除,返回删除的结果。
*/
public class Example {
static final int MAXSIZE=10;
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String students[]=new String[MAXSIZE];
int total=0; //记录个数
char choice='Y';
String name="";
//(1)新增:从键盘输入学生的姓名,添加到数组中。
do {
if(total<students.length)
{
System.out.println("请输入学生姓名:");
name=sc.nextLine();
students[total]=name;
total++;
}
else
{
System.out.println("存储空间已满!");
break;
}
System.out.println("是否继续输入?Y/N");
choice=(sc.nextLine()).charAt(0);
}while(choice=='Y'||choice=='y');
String sname;
//(2)查找:从键盘输入要查找的学生姓名,在数组中进行查找,并返回查找的结果。
do {
System.out.println("请输入要查找的学生姓名:");
sname=sc.nextLine();
int i;
for(i=0;i<total;i++)
{
if(students[i].equals(sname))
{
System.out.println(sname+"在数组中的"+i+"号单元");
break;
}
}
if(i>=total) System.out.println("没找到\""+sname+"\"");
System.out.println("是否继续查找?Y/N");
choice=(sc.nextLine()).charAt(0);
}while(choice=='Y'||choice=='y');
//(3)修改:从键盘输入要修改的学生姓名及修改之后的姓名,在数组中进行修改,返回修改的结果。
do {
System.out.println("请输入要修改的学生姓名:");
sname=sc.nextLine();
String newname="";
int i;
for(i=0;i<total;i++)
{
if(students[i].equals(sname))
{
System.out.println("请输入修改之后的学生姓名:");
newname=sc.nextLine();
students[i]=newname;
System.out.println("修改成功!");
System.out.println(Arrays.toString(students));
break;
}
}
if(i>=total) System.out.println("没找到\""+sname+"\"");
System.out.println("是否继续修改?Y/N");
choice=(sc.nextLine()).charAt(0);
}while(choice=='Y'||choice=='y');
//(4)删除:从键盘输入要删除的学生姓名,在数组中进行删除,返回删除的结果。
do {
System.out.println("请输入要删除的学生姓名:");
sname=sc.nextLine();
int i;
for(i=0;i<total;i++)
{
if(students[i].equals(sname))
{
for(int j=i+1;j<=total-1;j++)
students[j-1]=students[j];
students[total-1]=null;
total--;
System.out.println("删除成功!");
System.out.println(Arrays.toString(students));
break;
}
if(i>=total) System.out.println("没找到\""+sname+"\"");
}
System.out.println("是否继续删除?Y/N");
choice=(sc.nextLine()).charAt(0);
}while(choice=='Y'||choice=='y');
}
}