package com.itheima;
import java.util.ArrayList;
import java.util.List;
@SuppressWarnings("unused")
class Data {
int val;
}
public class Test2 {
public static void main(String args[]) {
Data data = new Data();//对象实例化
ArrayList<Data> list = new ArrayList<Data>();//存储Data对象的集合
//List<Integer> list = new ArrayList<Integer>();//存储Integer对象的集合
for (int i = 100; i < 103; i++) {//for循环嵌套,外循环
data.val = i;//100-->101-->102
list.add(data);//把data对象引用存储进集合
/*for (Data d : list) {//增强for循环嵌套(Foreach),内循环,对list集合进行遍历
//System.out.println(list.size());
System.out.println(d.val);//打印data对象的val值
//第一次size为1
//存储的也是1个元素,打印一个元素---100
//第二次size为2
//存储的也是2个元素,打印二个元素--->101--->101
//第三次size为3
//存储的也是3个元素,打印三个元素--->102--->102--->102
}*/
}
for (Data d : list) {//增强for循环(Foreach),对list集合进行遍历
System.out.println(d.val);//打印data对象的val值
//由于上面for循环对data对象的val进行赋值,最后一次给data对象的val赋值的是102.
//System.out.println(list.size());
//所以这里打印102.而集合的长度为3.打印了3次102
}
/*for(Data d:list){//增强for循环(Foreach),对list集合进行遍历
System.out.println(d);//打印data对象的引用,因为集合存储的是对象的引用
}*/
/*for(int i =100;i<103;i++){//for循环嵌套,外循环
data.val = i;//把i值赋值给对象的val
list.add(data.val);//把data对象赋值完毕的val值存储进Integer类型集合
for (Integer val : list) {//增强for循环嵌套(Foreach),内循环,对list集合进行遍历
System.out.println(val);//打印存储进集合的val值
//由于上面for循环对data对象的val进行赋值,也将val值存储进集合,
//所以打印--->100
//--->100--->101
//--->100-->101---102
//System.out.println(list.size());
}
}*/
/*for(Integer val : list){//增强for循环(Foreach),对list集合进行遍历
System.out.println(list.size());
System.out.println(val);//打印存储进集合的val值100-->101-->102
}*/
}
}
|