今天来编写updatePet更改宠物信息的方法
1.显示提示语
public static void updatePet(ArrayList<Animal> petArray){
System.out.println("请输入你要修改的宠物名字:");
}
2.修改宠物信息
暂时只允许修改宠物的年龄和价格
public static void updatePet(ArrayList<Animal> petArray){
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要修改的宠物名字:");
String name = sc.next();
System.out.println("请输入新的宠物年龄:");
String age = sc.next();
System.out.println("请输入新的宠物价格:");
int price = sc.nextInt();
Animal pet = new Animal();
pet.setAge(age);
pet.setPrice(price);
}
3.遍历集合中的宠物
public static void updatePet(ArrayList<Animal> petArray){
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要修改的宠物名字:");
String name = sc.next();
System.out.println("请输入新的宠物年龄:");
String age = sc.next();
System.out.println("请输入新的宠物价格:");
int price = sc.nextInt();
Animal pet = new Animal();
pet.setAge(age);
pet.setPrice(price);
for(int i = 0; i < petArray.size(); i++){
Animal Pet = petArray.get(i);
}
}
4.更新宠物信息
public static void updatePet(ArrayList<Animal> petArray){
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要修改的宠物名字:");
String name = sc.next();
System.out.println("请输入新的宠物年龄:");
String age = sc.next();
System.out.println("请输入新的宠物价格:");
int price = sc.nextInt();
Animal pet = new Animal();
pet.setAge(age);
pet.setPrice(price);
for(int i = 0; i < petArray.size(); i++){
Animal Pet = petArray.get(i);
if(Pet.getName().equals(name)){
petArray.set(i, pet);
}
}
}
5.提示修改成功
public static void updatePet(ArrayList<Animal> petArray){
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要修改的宠物名字:");
String name = sc.next();
System.out.println("请输入新的宠物年龄:");
String age = sc.next();
System.out.println("请输入新的宠物价格:");
int price = sc.nextInt();
Animal pet = new Animal();
pet.setAge(age);
pet.setPrice(price);
for(int i = 0; i < petArray.size(); i++){
Aniam Pet = petArray.get(i);
if(Pet.getName().equals(name)){
petArray.set(i, pet);
}
}
System.out.println("修改成功!");
}
运行一下
关于修改完后再查看宠物的名字为空的问题后续再解决。