- 容器(集合框架)是承载对象的对象
- 容器要装基本数据类型的时候,就要让他们转为对应的包装类型.
byte ---> Byte
short ---> Short
Int ---> Integer
long ---> Long
float ---> Float
double ---> Double
Char ---> Character
boolean ---> Boolean
但是list<Integer> list = new ArrayList<>(); list.add(1);
add中的1 回发生 自动装箱(auto-boxing),将其包装成Interger类型
- Java5之后向容器中添加基本数据类型回自动装箱,就是将基本数据类型处理成对应的包装类型
list.add(1) ---> list.add(new Integer(1));
list.add(3.14) ---> list.add(new Double(3.14)); - ArrayList - 底层实现是一个数组 使用连续内存 可以实现随机存取。LinkedList - 底层实现是一个双向循环链表 可以使用碎片内存 不能随机存放,但是增删元素只需要修改引用即可 所以增删元素时有更好的性能
- 从Java8开始可以给容易发送forEach消息对元素进行操作,forEach的参数可以是方法的引用也可以是Lambda表达式
list.forEach(Sysout.Out::Printlin); list.forEach(e -> { System.Out.Println(e.toUpperCase()); })