案例:存储学生对象并遍历(键盘输入)
需求:
创建一个存储学生对象的集合,存储三个学生对象,使用程序实现现在控制台遍历该集合学生的姓名和年龄来自于键盘录入。
思路:
- 定义学生类,为了键盘输入数据方便,把学生类中的成员变量定义为String类型
- 创建集合对象
- 键盘录入学生对象所需要的数据
- 创建学生对象,把键盘录入的数据赋值给学生对象的成员变量
- 往集合中添加学生对象
- 遍历集合,采用通用遍历格式实现
public class Student {
private String name;
private String age;
public Student(){
}
public Student(String name,String age){
this.name=name;
this.age=age;
}
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
public void setAge(String age){
this.age=age;
}
public String getAge(){
return age;
}
}
//1. 定义学生类,为了键盘输入数据方便,把学生类中的成员变量定义为String类型
//2. 创建集合对象
//3. 键盘录入学生对象所需要的数据
//4. 创建学生对象,把键盘录入的数据赋值给学生对象的成员变量
//5. 往集合中添加学生对象
//6. 遍历集合,采用通用遍历格式实现
import java.util.ArrayList;
import java.util.Scanner;
public class ArrayListDemo {
public static void main(String[] args) {
// 创建集合对象
ArrayList<Student> array=new ArrayList<Student>();
addStudent(array);
addStudent(array);
addStudent(array);
// 遍历集合,采用通用遍历格式实现
for(int i=0;i< array.size();i++){
Student s=array.get(i);
System.out.println(s.getName()+","+s.getAge());
}
}
public static void addStudent(ArrayList<Student> array){
// 键盘录入学生对象所需要的数据
Scanner sc=new Scanner(System.in);
System.out.println("请输入学生姓名:");
String name =sc.nextLine();
System.out.println("请输入学生年龄:");
String age =sc.nextLine();
// 创建学生对象,把键盘录入的数据赋值给学生对象的成员变量
Student s=new Student();
s.setName(name);
s.setAge(age);
//往集合中添加学生对象
array.add(s);
}
}
请输入学生姓名:
张三
请输入学生年龄:
23
请输入学生姓名:
李四
请输入学生年龄:
24
请输入学生姓名:
王五
请输入学生年龄:
25
张三,23
李四,24
王五,25