固定長度的List__java

來源:互聯網
上載者:User

Arrays工具類裡提供了asList(Object... a)方法,該方法可以把一個數組、或指定個數的對象轉換成一個List集合,這個List集合既不是ArrayList實作類別的執行個體,也不是Vector實作類別的執行個體,而是Arrays的內部類ArrayList的執行個體。

Arrays.ArrayList是一個固定長度的List集合,程式只能遍曆訪問該集合裡的元素,不可增加、刪除該集合裡的元素 。

1 程式碼範例

import java.util.*;public class FixedSizeList{public static void main(String[] args){List fixedList = Arrays.asList("PPT完全自學手冊", "Windows API");// 擷取fixedList的實作類別,將輸出Arrays$ArrayListSystem.out.println(fixedList.getClass());// 使用方法引用遍曆集合元素fixedList.forEach(System.out::println);// 試圖增加、刪除元素都會引發UnsupportedOperationException異常fixedList.add("駭客攻防");fixedList.remove("Windows API");}}

 2 運行結果
class java.util.Arrays$ArrayList
PPT完全自學手冊
Windows API
Exception in thread "main" java.lang.UnsupportedOperationException
        at java.util.AbstractList.add(Unknown Source)
        at java.util.AbstractList.add(Unknown Source)
        at FixedSizeList.main(FixedSizeList.java:14)
3 程式碼分析
代碼最後兩行對於普通的List集合完全正常,但如果試圖通過這兩個方法來增加,刪除Arrays.ArrayList集合中的元素,將會引發異常。但會在運行倒數第2行時引發UnsupportedOperationException異常。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.