1.数组的长度一经定义后是不可以改变的,但是ArrayList集合的长度是可以改变的
Arraylist list=new ArrayList<>();
是泛型,什么是泛型,泛型就是装在ArrayList集合中的全部元素都是统一的类型,
泛型只能是引用类型,不能是基本类型
2.下面是几个简单的例子:
public static void main(String[] args) {
//生成6个1~33的随机数存入集合,在遍历集合
ArrayList<Integer> list1=new ArrayList<>();
Random r=new Random();
for(int i=0;i<6;i++) {
list.add(r.nextInt(33)+1);
}
for(int i=0;i<list1.size();i++) {
System.out.println(list1.get(i));
}
//生成4个学生对象存入集合,在遍历集合
ArrayList<Student> list2=new ArrayList<>();
Student one=new Student("高圆圆",28);
Student two=new Student("赵又廷",30);
Student three=new Student("李小璐",33);
Student four=new Student("皮几万",23);
list2.add(one);
list2.add(two);
list2.add(three);
list2.add(four);
for(int i=0;i<list2.size();i++) {
Student s=list2.get(i);
System.out.println("姓名:"+s.getname()+" 年龄:"+s.getint());
}
//按指定格式输出集合中的元素{name@name@name@name}
ArrayList<String> list3=new ArrayList<>();
list3.add("张三丰");
list3.add("宋远桥");
list3.add("郭襄");
list3.add("张无忌");
printarrayList(list3);
}
public static void printarrayList(ArrayList<String> s) {
System.out.print("{");
for(int i = 0;i<s.size();i++) {
String t=s.get(i);
if(i==s.size()-1) {
System.out.println(t+"}");
}else {
System.out.print(t+"@");
}
}
}
}
//随机生成20个在1~100之间的随机数,筛选出其中的偶数(以集合作为方法的返回类型)
ArrayList<Integer> bigList=new ArrayList<>();
Random r=new Random();
for(int i=0;i<20;i++) {
bigList.add(r.nextInt(100)+1);
}
ArrayList<Integer> smallList=printsmallList(bigList);
for(int i=0;i<smallList.size();i++) {
System.out.println(smallList.get(i));
}
}
public static ArrayList<Integer> printsmallList(ArrayList<Integer> bigList){
//建立一个小集合来承接传过来的大集合
ArrayList<Integer> smallList=new ArrayList<>();
for(int i=0;i<bigList.size();i++) {
if(bigList.get(i)%2==0) {
smallList.add(bigList.get(i));
}
}
return smallList;
}