java 容器 arraylist 使用方法

1. ArrayList概述:

ArrayList 是一个数组队列,相当于 动态数组。与Java中的数组相比,它的容量能动态增长。它继承于AbstractList,实现了List, RandomAccess, Cloneable, java.io.Serializable这些接口。

ArrayList 继承了AbstractList,实现了List。它是一个数组队列,提供了相关的添加、删除、修改、遍历等功能。

ArrayList 实现了RandmoAccess接口,即提供了随机访问功能。RandmoAccess是java中用来被List实现,为List提供快速访问功能的。在ArrayList中,我们即可以通过元素的序号快速获取元素对象;这就是快速随机访问。稍后,我们会比较List的“快速随机访问”和“通过Iterator迭代器访问”的效率。

ArrayList 实现了Cloneable接口,即覆盖了函数clone(),能被克隆。

ArrayList 实现java.io.Serializable接口,这意味着ArrayList支持序列化,能通过序列化去传输。

和Vector不同,ArrayList中的操作不是线程安全的。所以,建议在单线程中才使用ArrayList,而在多线程中可以选择Vector或者CopyOnWriteArrayList。

二 、构造函数

// 默认构造函数

ArrayList()

// capacity是ArrayList的默认容量大小。当由于增加数据导致容量不足时,容量会添加上一次容量大小的一半。

ArrayList(int capacity)

// 创建一个包含collection的ArrayList

ArrayList(Collection<? extends E> collection)

三、 API

/
Collection中定义的API

boolean             add(E object)

boolean             addAll(Collection<? extends E> collection)

void                clear()

boolean             contains(Object object)

boolean             containsAll(Collection<?> collection)

boolean             equals(Object object)

int                 hashCode()

boolean             isEmpty()

Iterator<E>         iterator()

boolean             remove(Object object)

boolean             removeAll(Collection<?> collection)

boolean             retainAll(Collection<?> collection)

int                 size()

<T> T[]             toArray(T[] array)

Object[]            toArray()

// AbstractCollection中定义的API

void                add(int location, E object)

boolean             addAll(int location, Collection<? extends E> collection)

E                   get(int location)

int                 indexOf(Object object)

int                 lastIndexOf(Object object)

ListIterator<E>     listIterator(int location)

ListIterator<E>     listIterator()

E                   remove(int location)

E                   set(int location, E object)

List<E>             subList(int start, int end)

// ArrayList新增的API

Object               clone()

void                 ensureCapacity(int minimumCapacity)

void                 trimToSize()

void                 removeRange(int fromIndex, int toIndex)

四、遍历方式

package com.gao;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ArraylistDemo {
    public static void main(String args[]){
        List<String> list = new ArrayList<String>();
        list.add("Hello");
        list.add("Hello Arraylist");

        //方法1
        Iterator it1 = list.iterator();
        while(it1.hasNext()){
            System.out.println(it1.next());
        }

        //方法2
        for(Iterator it2 = list.iterator();it2.hasNext();){
             System.out.println(it2.next());
        }

        //方法3
        for(String tmp:list){
            System.out.println(tmp);
        }

        //方法4
        for(int i = 0;i < list.size(); i ++){
            System.out.println(list.get(i));
        }

    }
}

java 容器 arraylist 使用方法

时间: 2024-10-05 23:54:46

java 容器 arraylist 使用方法的相关文章

【转】Java.util.ArrayList.set()方法实例

java.util.ArrayList.set(int index, E element) 替换与指定元素在此列表中指定位置的元素. 声明 以下是java.util.ArrayList.set()方法的声明 public E set(int index, E element) 参数 index -- 替换索引的元素. element -- 要被存储在指定位置的元素. 返回值 此方法返回在指定位置之前元素. 异常 IndexOutOfBoundsException -- 如果索引超出范围 例子 下

java的ArrayList使用方法详解

ArrayList是Java的链表类,在项目开发中十分常见,那么怎样对ArrayList进行添加.删除.修改.查询.遍历呢?本文将进行详细阐述. 工具/原料 java 一.ArrayList的添加方法 1 方法1:依次按照顺序向ArrayList中添加数据. 用法: 将a添加到list中 list.add("a"); #例子: 2 方法2:在第N个数据后面添加一个数据 用法: 在第1个元素后面添加E list.add(1, "E"); 注意:ArrayList中必须

JAVA学习--ArrayList使用方法:List的主要实现类

* List中相对于Collection,新增加的方法      *  void add(int index, Object ele):在指定的索引位置index添加元素ele         boolean addAll(int index, Collection eles)         Object get(int index):获取指定索引的元素         Object remove(int index):删除指定索引位置的元素         Object set(int in

Java 容器 & 泛型:二、ArrayList 、LinkedList和Vector比较

Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket 继续上一篇的容器文章认识容器,泥瓦匠慢慢带你们走进List的容器解说.今天泥瓦匠想说说 ArrayList .LinkedList和Vector比较. 一.List回顾 序列(List),有序的Collection,正如它的名字一样,是一个有序的元素列表.确切的讲,列表通常允许满足 e1.equals(e2) 的元素对 e1 和 e2,并且如果列表本身允许 null 元素的话,通常它们允许多个 nu

黑马程序员——java基础 ArrayList集合基本方法演示

java基础 ArrayList集合基本方法演示 import java.util.ArrayList; import java.util.Iterator; public class ArrayListDemos { public static void main(String[] args) { // 创建一个新的容器 ArrayList al = new ArrayList(); al.add("abc1"); al.add("abc2"); al.add(&

(转载)Java 容器 &amp; 泛型:二、ArrayList 、LinkedList和Vector比较

继续上一篇的容器文章认识容器,泥瓦匠慢慢带你们走进List的容器解说.今天泥瓦匠想说说 ArrayList .LinkedList和Vector比较. 一.List回顾 序列(List),有序的Collection,正如它的名字一样,是一个有序的元素列表.确切的讲,列表通常允许满足 e1.equals(e2) 的元素对 e1 和 e2,并且如果列表本身允许 null 元素的话,通常它们允许多个 null 元素.实现List的有:ArrayList.LinkedList.Vector.Stack等

Java持有对象的方法——容器

通常,程序总是根据运行时才知道的某些条件去创建新对象. 在此之前,并不知道所需对象的数量,甚至不知道确切的类型. 所以,为解决这个普遍的编程问题,需要在任意时刻和任意位置创建任意数量的对象: 首先,不能依靠创建命名的引用来持有每一个对象了: MyType aReference; 原因: 不知道实际上会需要多少这样的引用.大多数语言会提供数组的方式保存对象(应该说是对象的引用) 但是,数组虽然是保存一组对象或者基本类型数据的有效方式,其由于具有固定的尺寸,在一般情况下十分受限. 解决: Java使

Java之arrayList 方法二

类型不兼容的错误集合 package com.yuanzijian02; import java.util.ArrayList; public class ArrayList2 { public static void main(String[] args) { // TODO 自动生成的方法存根 ArrayList list = new ArrayList(); list.add("hello"); list.add(new Integer(2)); String str = (St

java 遍历arrayList的四种方法

package com.test; import java.util.ArrayList;import java.util.Iterator;import java.util.List; public class ArrayListDemo {    public static void main(String args[]){        List<String> list = new ArrayList<String>();        list.add("luo