JAVA动态数组

任务目标:创建一个存储学生对象的集合,存储多个学生对象,使用程序实现在控制台遍历该集合学生的姓名和年龄,其中,学生数量和学生信息都来自于键盘输入。

  思路:

            1.定义学生类,包含两个成员变量:学生姓名(String name),学生年龄(String age);

            2.创建集合对象;

            3.键盘录入学生对象所需的数据;

            4.创建学生对象,把键盘录入的数据赋值给学生对象的成员变量

            5.向集合中添加学生对象

            6.遍历集合

具体代码如下:

/**
 * 学生类
 */
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;
    }
}
import java.util.ArrayList;
import java.util.Scanner;

public class ArrayListTest {
    public static void main(String[] args) {
        //创建集合对象
        ArrayList<Student> array = new ArrayList<Student>();

        //从键盘获取学生数量number
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入学生的个数:");
        int number = sc.nextInt();

       //通过for循环,重复调用ADDStudent方法
        for(int i = 0;i<number;i++){
            ADDStudent(array);
        }

        //通过for循环,遍历集合并输出
        for(int i = 0;i<array.size();i++){
            Student sl = array.get(i);
            System.out.println(sl.getName()+","+sl.getAge());
        }
    }

    //ADDStudent方法
    //返回值类型:void
    //参数:ArrayList<Student> array
    public static void ADDStudent(ArrayList<Student> array){
        //从键盘获取学生信息(学生姓名和学生年龄)
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入学生姓名:");
        String name = sc.nextLine();
        System.out.print("请输入学生年龄;");
        String age = sc.nextLine();
        //将学生信息通过setName()和setAge()方法添加到Student类中
        Student s = new Student();
        s.setName(name);
        s.setAge(age);
        //通过add()方法添加到集合中
        array.add(s);
    }
}

运行结果图:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值