1. 程式人生 > >Java日記 —— 2018年10月22日

Java日記 —— 2018年10月22日

## 第一天編輯出來忘發了,今天補上

1、從JDK 7開始,語句

ArrayList <AConcreteType> list = new ArrayList<AConcreteType>();

     可以簡化為

ArrayList<AConcreteType> list = new ArrayList<>();

     由於使用了稱為型別推導(type inference)特徵,構造方法中不再要求給出具體型別。編譯器可以從變數的宣告中推匯出型別。

2、

陣列和ArrayList之間的異同

操作 陣列 ArrayList 建立 String[ ] a = new String[10] ArrayList list<String> = new ArrayList( ) 訪問元素 a[index]  list.get(index) 更新元素 a[index] = "London" list.set(index."London") 返回大小 a.length list.size 新增一個新元素   list.add("London") 插入一個新元素   list.add(index,"London") 刪除一個元素   list.remove(index) 刪除一個元素   list..remove(Object) 刪除所有元素   list.clear()

    另外,ArrayList還有一些主要的方法:

        clear( ): void                                    刪除列表中的所有元素

        contains(o: Object): boolean           如果該列表包含元素o,則返回true

        indexOf(o: Object): int                     返回列表中第一個匹配元素的下標

        lastindexOf(o: Object): int                返回列表中最後一個匹配元素的下標

        isEmpty( ): boolean                         如果該列表不包含任何元素,則返回true

     一旦建立了一個數組,它的大小就固定了。可以使用java.util.Arrays.sort(array) 方法來對一個數組排序。如果要對一個數組列表排序,使用java.util.Collections.sort(arrayList)方法。

3、假設想建立一個用於儲存整數的ArrayList,可以使用下面程式碼來建立一個列表嗎?

ArrayList<int> listOfIntegers = new ArrayList<>();

      答案是不行。這樣行不通,因為儲存在ArrayList中的元素必須是一種物件。不能使用諸如int的基本資料型別來代替一個泛型型別。然而可以建立一個儲存Integer物件的ArrayList,如下所示:

ArrayList<Integer> listOfIntegers = new ArrayList<>();

4、從陣列建立一個數組列表:

String[] array = {"買了","fao冷","歪"};
ArrayList<String> list = new ArrayList<>(Arrays.asList(array));

     Arrays類中的靜態方法asList返回一個列表,該列表傳遞給ArrayList的構造方法用於建立一個ArrayList。

     還可以從一個數組列表建立一個物件陣列:

String[] array1 = new String[list.size()];
list.toArray(array1);

     呼叫list.toArray(array1)將list中的內容複製的array1中。

摘自:

        《Java語言程式設計與資料結構》