Java ArrayList add(int index, E element) example

Simple add() method is used for adding an element at the end of the list however there is another variant of add method which is used for adding an element to the specified index.

public void add(int index, Object element)

This method adds the element at the given index.

Example
   1: import java.util.ArrayList;
   2: public class AddMethodExample {
   3:    public static void main(String[] args) {
   4:        // ArrayList of String type
   5:        ArrayList<String> al = new ArrayList<String>();
   6:        // simple add() methods for adding elements at the end
   7:        al.add("Hi");
   8:        al.add("hello");
   9:        al.add("String");
  10:        al.add("Test");
  11:        //adding element to the 4th position
  12:        //4th position = 3 index as index starts with 0
  13:        al.add(3,"Howdy");
  14:  
  15:        System.out.println("Elements after adding string Howdy:"+ al);
  16:        //adding string to 1st position
  17:        al.add(0, "Bye");
  18:  
  19:        //Print
  20:        System.out.println("Elements after adding string bye:"+ al);
  21:    }
  22: }

Output:

Elements after adding string Howdy:[Hi, hello, String, Howdy, Test]
Elements after adding string bye:[Bye, Hi, hello, String, Howdy, Test]
时间: 2024-10-27 12:33:55

Java ArrayList add(int index, E element) example的相关文章

【转载】新知识点:JAVA List.add(int,object)

转载地址:http://blog.sina.com.cn/s/blog_6819fa800100lwr6.html 1.函数原型 void add(int index, E element) 在列表的指定位置插入指定元素(可选操作).将当前处于该位置的元素(如果有的话)和所有后续元素向右移动(在其索引中加 1). 2.参数: index - 要在其中插入指定元素处的索引 element - 要插入的元素   3.抛出: UnsupportedOperationException - 如果列表不支

ArrayList调用remove(int index)抛出UnsupportedOperationException问题分析以及解决记录

使用Arrays转数组成为List后,不能调用add(...)和remove(...)方法,此时如果调用就会抛出UnsupportedOperationException异常 原因 其实Arrays.asList(...)转成的List不是java.util包下面的ArrayList,而是一个内部静态类ArrayList. asList(T... a)方法 public static <T> List<T> asList(T... a) { return new ArrayList

Java ArrayList实现原理

一.ArrayList介绍 ArrayList是一种线性数据结构,它的底层是用数组实现的,相当于动态数组.与Java中的数组相比,它的容量能动态增长.类似于C语言中的动态申请内存,动态增长内存. 当创建一个数组的时候,就必须确定它的大小,系统会在内存中开辟一块连续的空间,用来保存数组,因此数组容量固定且无法动态改变.ArrayList在保留数组可以快速查找的优势的基础上,弥补了数组在创建后,要往数组添加元素的弊端.实现的基本方法如下: 1. 快速查找:在物理内存上采用顺序存储结构,因此可根据索引

Java - ArrayList源码分析

java提高篇(二一)-----ArrayList 一.ArrayList概述 ArrayList是实现List接口的动态数组,所谓动态就是它的大小是可变的.实现了所有可选列表操作,并允许包括 null 在内的所有元素.除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小. 每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小.默认初始容量为10.随着ArrayList中元素的增加,它的容量也会不断的自动增长.在每次添加新的元素时,Array

java ArrayList 源码浅析

学习的东西越多就会发现自己越无知,最近看各种大牛的博客之类,深觉自己的无知啊,瀑布汗...摆正心态,慢慢学习,希望勤能补拙了. ArrayList算是Java集合框架中相对简单的一个了,学习数据结构的时候很多人也会选择去自己实现一个类似功能的数组的线性存储,其实ArrayList也是如此,只是其开发人员写的更加正规一些,下面就看下源码去看下他们的思路. 1. 定义 public class ArrayList<E> extends AbstractList<E> implement

java ArrayList集合分析

一. ArrayList概述: 本文的源代码分析基于的JDK版本是1.8. ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存. ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用concurrent并发包下的CopyOnWriteArrayList类. ArrayList实现了Se

Java ArrayList的模拟实现

package test; import java.util.Arrays; import java.util.Collection; public class MyArrayList<E> { //存储数据 private Object[] values; //已经使用的容量 private int size; //修改次数 private int modCount; /** * 根据给定容量初始化 * @param initialCapacity */ public MyArrayList

Java——ArrayList底层源码分析

1.简介 ArrayList 是最常用的 List 实现类,内部是通过数组实现的,它允许对元素进行快速随机访问.数组的缺点是每个元素之间不能有间隔, 当数组大小不满足时需要增加存储能力,就要将已经有数组的数据复制到新的存储空间中. 当从 ArrayList 的中间位置插入或者删除元素时,需要对数组进行复制.移动.代价比较高.因此,它适合随机查找和遍历,不适合插入和删除. 线性表的顺序存储,插入删除元素的时间复杂度为O(n),求表长以及增加元素,取第 i 元素的时间复杂度为O(1). ArrayL

Java ArrayList源码分析(有助于理解数据结构)

arraylist源码分析 1.数组介绍 数组是数据结构中很基本的结构,很多编程语言都内置数组,类似于数据结构中的线性表 在java中当创建数组时会在内存中划分出一块连续的内存,然后当有数据进入的时候会将数据按顺序的存储在这块连续的内存中.当需要读取数组中的数据时,需要提供数组中的索引,然后数组根据索引将内 存中的数据取出来,返回给读取程序.在Java中并不是所有的数据都能存储到数组中,只有相同类型的数据才可以一起存储到数组中.    因为数组在存储数据时是按顺序存储的,存储数据的内存也是连续的