首頁 >Java >java教程 >如何在Java中取得列表的子列表?

如何在Java中取得列表的子列表?

WBOY
WBOY轉載
2023-09-04 23:41:08815瀏覽

如何在Java中取得列表的子列表?

List 介面擴充了 Collection 並宣告了儲存元素序列的集合的行為。清單的使用者可以非常精確地控制將元素插入到清單中的位置。這些元素可透過其索引存取並且可搜尋。 ArrayList是List介面最受歡迎的實作。

List介面方法subList()可用來取得清單的子清單。它需要開始和結束索引。此子列表包含與原始列表中相同的對象,並且對子列表的更改也將反映在原始列表中。在本文中,我們將透過相關範例討論 subList() 方法。

語法

List<E> subList(int fromIndex, int toIndex)

注意事項

  • 傳回此清單中指定 fromIndex(包括)和 toIndex(不包含)之間部分的視圖。

  • 如果 fromIndex 和 toIndex 相等,則傳回的清單為空。

  • 傳回的清單由此清單支持,因此傳回清單中的非結構性變更會反映在此清單中,反之亦然。

  • 傳回的清單支援此清單支援的所有可選清單操作。

參數

  • fromIndex - 子清單的低階點(包括)。

  • toIndex - 子清單的高階點(不包含)。

傳回值

此清單中指定範圍的視圖。

拋出

  • IndexOutOfBoundsException - 對於非法的端點索引值(fromIndex size || fromIndex > toIndex)

範例1

以下是從清單中取得子清單的範例:

package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CollectionsDemo {
   public static void main(String[] args) {
      List<String> list = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "e"));
      System.out.println("List: " + list);

      // Get the subList
      List<String> subList = list.subList(2, 4);

      System.out.println("SubList(2,4): " + subList);
   }
}

輸出

這將產生以下結果-

List: [a, b, c, d, e]
SubList(2,4): [c, d]

範例2

以下範例顯示使用sublist() 也有副作用。如果您修改子列表,它將影響原始列表,如範例所示 -

package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CollectionsDemo {
   public static void main(String[] args) {
      List<String> list = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "e"));

      System.out.println("List: " + list);

      // Get the subList
      List<String> subList = list.subList(2, 4);
      System.out.println("SubList(2,4): " + subList);

      // Clear the sublist
      subList.clear();
      System.out.println("SubList: " + subList);

      // Original list is also impacted.
      System.out.println("List: " + list);
   }
}

輸出

#這將產生以下結果 -

List: [a, b, c, d, e]
SubList(2,4): [c, d]
SubList: []
List: [a, b, e]

以上是如何在Java中取得列表的子列表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除