記事のディレクトリ
- まず、基本的な意味
- 第二、長--size()
- に第三に、アクセス
- 第四に、)(--add増加
- V.(--removeを削除します)
- 5.1インデックス知ら--remove(int型のインデックス)
- 5.2オブジェクトを知っています
- 5.3空--clear()
- 第六に、--set変更(int型のインデックス、E要素)
- セブン比較します
- 八、発注
まず、基本的な意味
コレクションインタフェースインタフェース→リスト→アレイの実装クラス。
名前:配列の配列です。
プロジェクト | 配列リスト | ベクター |
---|---|---|
原則 | とともに | とともに |
機能 | とともに | とともに |
スレッドの安全性 | マルチスレッド環境、スレッド同期の問題を管理するためのプログラマ | スレッドセーフ |
長さの成長 | 元の長さの50%、メモリスペースを節約 | 元の長さの100% |
使用の開発優先順位 | ArrayListの優先順位の最新バージョン | 続きます |
第二、長--size()
public class ListTest {
public List coursesToSelect;
public ListTest() {
this.coursesToSelect = new ArrayList();
}
public static void main(String[] args){
System.out.println(coursesToSelect.size());
}
}
に第三に、アクセス
3.1オブジェクトを知っています
3.1.1のindexOf(オブジェクトo)
最初のインデックスが表示され
、インデックスがある、または-1なし
Course cr1 = new Course("1", "语文");
System.out.println(coursesToSelect.indexOf(cr1));
3.1.2のlastIndexOf(オブジェクトo)
インデックスが表示された最後の時間
インデックスがある、または-1なし
Course cr1 = new Course("1", "语文");
System.out.println(coursesToSelect.lastIndexOf(cr1));
3.2 --get知らインデックス()
(int型のインデックス)を取得
forループ3.2.1
public void testGet() {
for (int i = 0; i < coursesToSelect.size(); i++) {
Course cr = (Course) coursesToSelect.get(i);
System.out.println("课程:" + cr.getId() + ":" + cr.getName());
}
}
3.2.2 foreachループ
foreachのは、イテレータの速記です。
public void testForeach() {
/**
* 为什么使用Object?
* 原因是当一个元素存入集合中时,其类型被忽略,存储为Object型。
*/
for (Object obj : coursesToSelect) {
Course cr = (Course) obj;
System.out.println("课程:" + cr.getId() + ":" + cr.getName());
}
}
3.2.3イテレータ--Iterator
特徴:データは、コレクションの要素を横断するために、保存することができません。それは存在している必要があり、コレクションに依存します。
public void testIterator() {
// 通过集合的iterator方法,创建迭代器的实例。
Iterator it = coursesToSelect.iterator();
// 未知次数时,使用while循环。
while (it.hasNext()) {
Course cr = (Course) it.next();
System.out.println("课程:" + cr.getId() + ":" + cr.getName());
}
}
3.3コピー--clone()
このArrayListのインスタンスのシャローコピーを返します。
第四に、)(--add増加
4.1エレメントターゲットは--add()
増加--add(E電子)の終わりを4.1.1
Course cr1 = new Course("1", "语文");
coursesToSelect.add(cr1);
4.1.2増加のどこ--add(int型のインデックス、E要素)
Course cr2 = new Course("2", "数学");
coursesToSelect.add(0, cr2);
4.2要素)(--addAllオブジェクトの配列であります
エンド4.2.1増加--addAll(コレクションC)
Course[] courses = { new Course("3", "英语"), new Course("4", "政治") };
// 数组。不可以直接添加到集合中,需要先转化为List集合。
coursesToSelect.addAll(Arrays.asList(courses));
4.2.2増加はどこでも--addAll(int型のインデックス、コレクションC)
Course[] courses2 = { new Course("5", "历史"), new Course("6", "地理") };
coursesToSelect.addAll(2, Arrays.asList(courses2));
V.(--removeを削除します)
5.1インデックス知ら--remove(int型のインデックス)
coursesToSelect.remove(1);
5.2オブジェクトを知っています
5.2.1場合、ターゲット要素--remove(オブジェクトo)
Course cr = (Course)coursesToSelect.get(1);
coursesToSelect.remove(cr);
5.2.2要素は、オブジェクトの配列であります
5.2.2.1 --removeAll(コレクションc)を削除
Course[] courses = { (Course) coursesToSelect.get(0), (Course) coursesToSelect.get(1) };
coursesToSelect.removeAll(Arrays.asList(courses));
5.2.2.2間接--retainAll(コレクションc)を削除
Course[] courses = { (Course) coursesToSelect.get(0), (Course) coursesToSelect.get(1) };
coursesToSelect.retainAll(Arrays.asList(courses));
5.3空--clear()
coursesToSelect.clear();
第六に、--set変更(int型のインデックス、E要素)
coursesToSelect.set(1, new Course("7", "物理"));
セブン比較します
7.1 --containsを含み(オブジェクトo)
Course cr1 = (Course)coursesToSelect.get(1);
Course cr2 = new Course("1", "语文");
System.out.println(coursesToSelect.contains(cr1)); // true
System.out.println(coursesToSelect.contains(cr2)); // false
7.2が空--isEmptyあります()
System.out.println(coursesToSelect.isEmpty());
八、発注
8.1コンパレータ
「フレームワークの設定 - ツール(コレクション)」を参照してください。
8.1上昇--sort(コンパレータC)
(4)のtoArray()
(最初から最後の要素まで)適切な順序でのすべての要素のリストは、アレイを含む返し。
(5)のtoArray(T [] a)は
このリスト内の正しい順序を返し、すべての配列要素は、(最後の要素から最初に)含み、返される配列の実行時の型は、指定された配列型を実行することです。