📌  相关文章
📜  Java AbstractSequentialList |添加()

📅  最后修改于: 2022-05-13 01:54:38.745000             🧑  作者: Mango

Java AbstractSequentialList |添加()

AbstractSequentialList使用由 List 接口指定并在类 AbstractList 中重写的add()方法。因此 AbstractSequentialList 没有自己的 add() 方法。相反,它有add(int index, E element)方法。

AbstractSequentialList add(int index, E element)方法在此列表中的指定位置插入指定元素。它将当前位于该位置的元素(如果有)和任何后续元素向右移动(将它们的索引加一)。此实现首先获取一个指向索引元素的列表迭代器(使用 listIterator(index))。然后,它使用 ListIterator.add 插入指定的元素。

因此,add(E element) 和 add(int index, E element) 都可以与 AbstractSequentialList 类一起使用。

句法

public void add(int index, E element)

参数:此方法有两个参数:

  • index – 它表示要插入指定元素的 Integer 类型的索引。此参数是可选的。如果未指定,则将指定元素插入到列表的最后一个位置。
  • element - 它表示要插入到列表中的 E 类型元素。

异常:此方法引发以下异常:

  • UnsupportedOperationException – 如果此列表不支持添加操作
  • ClassCastException – 如果指定元素的类阻止它被添加到此列表中
  • NullPointerException – 如果指定元素为空且此列表不允许空元素
  • IllegalArgumentException – 如果指定元素的某些属性阻止它被添加到此列表中
  • IndexOutOfBoundsException – 如果索引超出范围(索引大小())

以下是说明 add() 方法的程序:

程序 1:添加元素,不传递索引

// Java program to demonstrate
// add() method
  
import java.util.*;
  
public class GfG {
  
    public static void main(String[] args)
    {
        // Creating an instance of the AbstractSequentialList
        AbstractSequentialList absl = new LinkedList<>();
  
        // adding elements to absl
        absl.add(5);
        absl.add(6);
        absl.add(7);
  
        // Printing the list
        System.out.println(absl);
    }
}
输出:
[5, 6, 7]

Java-CollectionsRemove 术语:Java-Functions Java-Functions
程序 2:通过传递索引添加元素

// Java program to demonstrate
// add() method
  
import java.util.*;
  
public class GfG {
  
    public static void main(String[] args)
    {
        // Creating an instance of the AbstractSequentialList
        AbstractSequentialList absl = new LinkedList<>();
  
        // adding elements to absl
        absl.add(0, 8);
        absl.add(1, 7);
        absl.add(1, 9);
        absl.add(3, 10);
  
        // Printing the list
        System.out.println(absl);
    }
}
输出:
[8, 9, 7, 10]

程序 3:演示 IndexOutOfBoundException

// Java code to show IndexOutofBoundException
  
import java.util.*;
  
public class GfG {
  
    public static void main(String[] args)
    {
  
        // Creating an instance of the AbstractSequentialList
        AbstractSequentialList absl = new LinkedList<>();
  
        // adding elements to absl
        absl.add(5);
        absl.add(6);
        absl.add(7);
        absl.add(2, 8);
        absl.add(2, 7);
        absl.add(1, 9);
        absl.add(4, 10);
  
        // Printing the list
        System.out.println(absl);
  
        try {
            // showing IndexOutOfBoundsException
            absl.add(10, 12);
        }
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}
输出:
[5, 9, 6, 7, 10, 8, 7]
Exception: java.lang.IndexOutOfBoundsException: Index: 10, Size: 7