深入理解java集合框架之---------Arraylist集合 -----构造函数

ArrayList有三个构造方法

ArrayList有三个常量

1、private transient Object[] elementData (数组); 2、private int size (元素个数)

1、ArrayList(int initialCapacity); 构造一个初始容量的集合

/**
	 * 序列化
	 */
	private static final long serialVersionUID = -6277824875242725854L;

	/**
	 * 定义一个数组
	 */
	private transient Object[] elementData;

	/**
	 * 定义元素个数
	 */
	private int size;

	/**
	 * 构造一个具有初始容量的数组
	 * @param initialCapacity
	 *
	 */
	public ArraList(int initialCapacity) {
		super();
		if(initialCapacity < 0 ){
			throw new IllegalArgumentException("Illegal Capacity" +initialCapacity);
		}

		this.elementData = new Object[initialCapacity];

	}

  2、构造一个初始容量为10的集合

  

/**
	 * 构造一个初始容量为10的集合
	 */
	public ArraList() {
		this(10);
	}

  3、构造一个入参是集合的列表

  

/**
	 * 构造一个入参是集合的list
	 */
	public ArraList(Collection<? extends E> c) {
		//转换数组
		elementData = c.toArray();
		//设置长度
		size = elementData.length;
		//判断是不是Object
		if(elementData.getClass() != Object[].class){
			elementData = Arrays.copyOf(elementData, size,Object[].class);
		}
	}

  

原文地址:https://www.cnblogs.com/hanxue112253/p/9537565.html

时间: 2024-10-15 03:44:37

深入理解java集合框架之---------Arraylist集合 -----构造函数的相关文章

深入理解java集合框架之---------Arraylist集合 -----添加方法

Arraylist集合 -----添加方法 1.add(E e) 向集合中添加元素 /** * 检查数组容量是否够用 * @param minCapacity */ public void ensureCapacity(int minCapacity){ modCount++; int oldCapacity = elementData.length; if(minCapacity > oldCapacity){ Object oldData[] = elementData; int newCa

集合框架之ArrayList集合

ArrayList集合的介绍与应用 import java.util.ArrayList; public class TextArraryList { public static void main(String[] args) { ArrayList <String> list1 =new ArrayList<>(); System.out.println(list1);//[ ] list1.add("张三"); list1.add("李四&quo

集合框架(去除ArrayList集合中的重复字符串元素案例2)

package cn.itcast_04; import java.util.ArrayList; import java.util.Iterator; /* * 需求:ArrayList去除集合中字符串的重复值(字符串的内容相同) * 要求:不能创建新的集合,就在以前的集合上做. */ public class ArrayListDemo2 { public static void main(String[] args) { // 创建集合对象 ArrayList array = new Ar

集合框架(去除ArrayList集合中的重复自定义对象元素案例)

学生类 package cn.itcast_04; public class Student { private String name; private int age; public Student() { super(); } public Student(String name, int age) { super(); this.name = name; this.age = age; } public String getName() { return name; } public v

第14章 集合框架(1)-List集合的各种类

1.概述 1.1.Java集合框架的由来 1.2.什么是集合框架? 1.3.为什么需要集合框架 1.4.常用的框架接口规范 2.Vector类 2.1.存储原理 2.2.构造方法 2.3.常用方法 3.Stack类 3.1.什么是栈 3.2.栈的构造方法和常用方法 4.ArrayList类 5.LinkedList类 5.1定义 5.2.常用方法 1.概述 1.1.Java集合框架的由来 刚开始的时候java只有Vetor,Stack,Hashtable这些同容器类用来保存大量的对象.容器类是可

Java集合框架:ArrayList

ArrayList定义 package java.util; public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable{ private static final int DEFAULT_CAPACITY = 10; private static final Object[] EMPTY_ELEME

Java集合框架之Collection集合

一.引言 Java集合框架和IO框架一样,看似很庞杂的体系框架,但是当你逐一深入每个集合的用法后,就能明显的看出他们之间的区别和联系.最后拎出一个框架图,就一目了然了.由于Java的集合框架分两大系Collection系和Map系,之所以要分开是因为Collection内存储的是线性集合,而Map的元素是以键值对(Key-Value)的形式存的.其实Map和Collection内部实现是存在联系的,学完就懂了.本文主要介绍的Collection中常用的集合的用法以及之间的区别. 二.Collec

深入集合框架之ArrayList源码剖析

ArrayList概述 ArrayList底层由数组实现,非线程安全,但是数组可以动态增加,也可以叫动态数组,提供了一系列的好处,我们来深入看看: 成员变量与构造函数 /** * 存储ArrayList内的数组 */ private transient Object[] elementData; /** * The size of the ArrayList (the number of elements it contains). * ArrayList中包含了多少元素 */ private

I学霸官方免费教程三十一:Java集合框架之List集合

集合框架 在数组的使用过程中可以看到,想要向数组中插入元素和删除元素非常麻烦,而且数组的长度是无法改变的.java为我们提供了批量存储数据更加方便的容器,就是集合.集合和数组的作用一样,都是为了使用一个变量来存储一批数据的:但集合使用起来更加方便,而且集合的长度是可以变化的. List接口 List集合可以存储有序的,可重复的数据:常用的子类是ArrayList和LinkedList两个类 ArrayList类 这是一个底层由数组实现的集合类,是对数组进行了封装. 实例: package col