(1)人が諦めない限り、全世界があなたを諦めない
(2)私は大いに役立つために生まれる(3)
学ぶことの苦しみに耐えられないのなら、人生の苦しみに耐えなければならない。深い理解。
(4)難しいことをすることで得なければなりません。(
5)精神は本当の刃です。
(6)相手を2回、心の中で初めて征服します。
(7)書くのは本当に簡単ではありません。好きな場合や何か持っている場合好き+フォローまたはお気に入りを忘れないでください〜
Java SE 040ArrayListソースコードの詳細な分析
1.ArrayList
(1)配列自体がオブジェクトを受け取るので、何でも入れることができます。ネイティブデータタイプを除くすべてがオブジェクトであるためです。
(2)取り出すときは、どのような物を入れるかを知っておく必要があります。
(3)コレクションにオブジェクトを配置する場合にのみ適しています。ネイティブデータタイプを配置できません。
package com.javase.arraylist;
import java.util.ArrayList;
public class ArrayListTest {
public static void main(String[] args) {
ArrayList list = new ArrayList();
list.add(new Integer(3));
list.add(new Integer(4));
list.add(new Integer(5));
list.add(new Integer(6));
/**
* 不能将Object[]转换为Integer[]
* 错误代码Integer[] in = list.toArray();
*/
Object[] in = list.toArray();
for(int i = 0 ; i < in.length; i++){
System.out.println(((Integer)in[i]).intValue());
}
}
}
2.ArrayListの実装
(1)コレクションに格納されているのは、オブジェクト自体ではなく、オブジェクトの参照です。
(2)ArrayListの最下層は配列によって実装されます。ArrayListオブジェクトがパラメータなしの構築メソッドを使用して生成される場合、長さ10のオブジェクトタイプ配列が実際に最下層に生成されます。
メソッドがArrayListオブジェクトを生成すると、実際には下部に長さ10のオブジェクトタイプの配列が生成されます。