全班同学中随机的找出一名同学,打印这名同学的个人信息。
1.存储全班同学信息(姓名、年龄)
2.打印全班同学每一个人的信息(姓名、年龄)
3.在班级总人数范围内,随机产生一个随机数,查找该随机数所对应的同学信息(姓名、年龄)
ArrayList集合是程序中最常见的一种集合,它属于引用数据类型(类)。在ArrayList内部封装了一个长度可变的数组,当存入的元素超过数组长度时,ArrayList会在内存中分配一个更大的数组来存储这些元素,因此可以将ArrayList集合看作一个长度可变的数组。
package nan_02;
import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;
public class CallName {
public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList <StudentName> array = new ArrayList<StudentName>();
add(array);
print(array);
ran(array);
}
public static class StudentName {
String name;
int age;
}
public static void ran(ArrayList<StudentName> array){
Random list = new Random();
int num = array.size();
int index = list.nextInt(num);
StudentName arr = array.get(index);
System.out.println("------------------------");
System.out.println("学生姓名: "+arr.name+" "+"学生年龄: "+arr.age);
}
public static void print(ArrayList<StudentName> array){
for(int i = 0 ; i < array.size() ; i++){
StudentName s = array.get(i);
System.out.println("学生姓名: "+s.name+" "+"学生年龄: "+s.age);
}
}
public static void add(ArrayList<StudentName> array){
// StudentName sn1 = new StudentName();
// StudentName sn2 = new StudentName();
// StudentName sn3 = new StudentName();
// StudentName sn4 = new StudentName();
// StudentName sn5 = new StudentName();
//
// sn1.name = "zhangsan1";
// sn1.age = 201;
//
// sn2.name = "zhangsan2";
// sn2.age = 202;
//
// sn3.name = "zhangsan3";
// sn3.age = 203;
//
// sn4.name = "zhangsan4";
// sn4.age = 204;
//
// sn5.name = "zhangsan5";
// sn5.age = 205;
// array.add(sn1);
// array.add(sn2);
// array.add(sn3);
// array.add(sn4);
// array.add(sn5);
Scanner sc = new Scanner(System.in);
System.out.println("Please input the student number: ");
int num = sc.nextInt();
for(int i = 0 ; i < num ; i++){
StudentName s = new StudentName();
System.out.println("存储第 "+i+"个学生姓名");
s.name = sc.next();
System.out.println("存储第 "+i+"个学生年龄");
s.age = sc.nextInt();
array.add(s);
}
}
}
注://代表一种固定往集合添加元素方法;