10.练习3_List综合:1.提示用户循环输入学生的信息,存储到ArrayList集合中,2.输出所有学生的信息, 3.根据学号修改指定学生信息,4.根据学号删除学生
学习:第7遍
1.练习3:List综合
定义一个学生类Student类
属性:id、name、age
1.提示用户循环输入学生的信息,存储到ArrayList集合中
2.输出所有学生的信息
3.根据学号修改指定学生信息
4.根据学号删除学生
/**
* 定义一个学生类Student类
* 属性:id、name、age
*
* 1.提示用户循环输入学生的信息,存储到ArrayList集合中
* 2.输出所有学生的信息
* 3.根据学号修改指定学生信息
* 4.根据学号删除学生
*/
package season13;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;
public class TestListTest {
//全局变量
static Scanner input = new Scanner(System.in);
static ArrayList<Student> arrayList = new ArrayList<Student>();
public static void main(String[] args) {
//输入学生的静态方法
inputStu();
//输出打印学生的静态方法
printStu();
//根据学号修改学生信息的静态方法
System.out.print("请输入要修改的学生id: ");
int id = input.nextInt();
modifyById(id);
//根据学号删除学生
System.out.print("请输入要删除的学生id: ");
int removeId = input.nextInt();
removeById(removeId);
}
public static void inputStu(){
//输入学号为0则结束
while(true){
System.out.println("======请输入学生信息======");
Student student = new Student();
System.out.println("请输入学号: ");
int id=input.nextInt();
if(0==id){
break;
}
student.setId(id);
System.out.println("请输入姓名: ");
student.setName(input.next());
System.out.println("请输入年龄: ");
student.setAge(input.nextInt());
arrayList.add(student);
}
}
public static void printStu(){
System.out.println("-------学生信息如下------");
System.out.println("学号\t姓名\t年龄");
for(Student s:arrayList){
System.out.println(s.getId()+"\t"+s.getName()+"\t"+s.getAge());
}
}
public static void modifyById(int id){
//1.判断指定id的学生是否存在
Student student = findStuById(id);
if(null==student){
System.out.println("指定id的学生不存在");
return;
}
//2.修改学生信息
System.out.println("请输入修改后的姓名");
student.setName(input.next());
System.out.println("请输入修改后的年龄: ");
student.setAge(input.nextInt());
System.out.println("修改成功");
printStu();
}
//查:指定id的学生
public static Student findStuById(int id){
Iterator<Student> iterator = arrayList.iterator();
while(iterator.hasNext()){
Student student = iterator.next();
if(student.getId()==id){
return student;
}
}
return null;
}
public static void removeById(int id){
//1.判断指定id的学生是否存在
Student student = findStuById(id);
if(null==student){
System.out.println("指定id的学生不存在");
return;
}
arrayList.remove(student);
System.out.println("删除成功");
printStu();
}
}
class Student{
private int id;
private String name;
private int age;
public Student() {
super();
}
public Student(int id, String name, int age) {
super();
this.id = id;
this.name = name;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Student [id=" + id + ", age=" + age + ", name=" + name + "]";
}
}