带两个参数的方法

修改学生姓名: 输入旧、新名,修改姓名,并提示是否修改成功。

import java.util.Scanner;
class Student{
String[] name = new String[10];
Scanner input = new Scanner(System.in);
//添加学生姓名
public void addName(){
boolean con = true;
while(con){
for(int i=0; i<name.length; i++){
System.out.printf("请输入第%d个学生的姓名:", i+1);
name[i] = input.next();
System.out.println("是否继续?(y/n):");
String choice = input.next();
if(choice.equals("n")){
con = false;
break;
}
}
}
}
//显示学生信息
public void showName(){
System.out.println("\n***本班学生姓名表:***");
for(int i=0; i<name.length; i++){
//输出不为空的元素
if(name[i] != null) //(name[i].equals("null"))这句会出现NullPointerException(空指针异常)
System.out.print(name[i]+"\t");
}
}

//编辑学生姓名
public boolean editName(String oldname, String newname){
boolean result = false; //返回标识默认为false
for(int i=0; i<name.length; i++){ //历遍数组查找该学生
if(name[i] != null && name[i].equals(oldname)){ //姓名不能为空,并且跟旧名相同表示找到
name[i] = newname; //将当前名修改成新名字
result = true; //标识改为true
break;
}
}
return result; //返回修改结果
}
//为保证主函数简洁,再写一个输入新旧名字的方法(输入新旧名并输出查找与修改结果)
public void inputName(){
String oldname, newname;
System.out.print("\n请输入要修改的学生姓名:");
oldname = input.next();
System.out.print("\n请输入新名字:");
newname = input.next();
if(editName(oldname, newname)) //调用编辑学生姓名的方法得到修改结果;
System.out.println("找到该学生并修改成功!");
else
System.out.println("对不起,该学生不存在!");
showName(); //输出姓名表

}
}
//程序入口
public class Stu{
public static void main(String[] args){
Student st = new Student();
st.addName();
st.showName();
st.inputName();
}
}
/*--------------------------
请输入第1个学生的姓名:张三
是否继续?(y/n):
y
请输入第2个学生的姓名:权四
是否继续?(y/n):
y
请输入第3个学生的姓名:王五
是否继续?(y/n):
y
请输入第4个学生的姓名:赵六
是否继续?(y/n):
n

***本班学生姓名表:***
张三 权四 王五 赵六
请输入要修改的学生姓名:权四

请输入新名字:李四
找到该学生并修改成功!

***本班学生姓名表:***
张三 李四 王五 赵六
--------------------------*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值