Java SE 040 ArrayList源代码深入剖析

(1)一个人只要自己不放弃自己,整个世界也不会放弃你.
(2)天生我才必有大用
(3)不能忍受学习之苦就一定要忍受生活之苦,这是多么痛苦而深刻的领悟.
(4)做难事必有所得
(5)精神乃真正的刀锋
(6)战胜对手有两次,第一次在内心中.
(7)编写实属不易,若喜欢或者对你有帮助记得点赞+关注或者收藏哦~

Java SE 040 ArrayList源代码深入剖析

1.ArrayList

(1)Array本身接收的是一个Object,所以什么都可以往里面放。因为除了原生数据类型以外,任何东西都是Object。

(2)取出来时要知道放进去的对象是什么类型的。

(3)集合里面只能适合放置对象。不能放置原生数据类型。

package com.javase.arraylist;

import java.util.ArrayList;

public class ArrayListTest {
    
    
	public static void main(String[] args) {
    
    
		ArrayList list = new ArrayList();
		
		list.add(new Integer(3));
		list.add(new Integer(4));
		list.add(new Integer(5));
		list.add(new Integer(6));
		/**
		 * 不能将Object[]转换为Integer[]
		 * 错误代码Integer[] in = list.toArray();
		 */
		Object[] in = list.toArray();
		for(int i = 0 ; i < in.length; i++){
    
    
			System.out.println(((Integer)in[i]).intValue());
		}
	} 
}

2.ArrayList的实现方式

(1)集合中存放的依然是对象的引用而不是对象本身。

(2)ArrayList底层采用数组实现,当使用不带参数的构造方法生成ArrayList对象时,实际上会在底层生成一个长度为10的Object类型数组。

方法生成ArrayList对象时,实际上会在底层生成一个长度为10的Object类型数组。

猜你喜欢

转载自blog.csdn.net/xiogjie_67/article/details/108501242
今日推荐