JAva-コレクション(一)--概要、CollectionおよびIteratorインタフェース、遍歴コレクション
16772 ワード
文書ディレクトリ集合概要 CollectionおよびIteratorインタフェース ループ集合 コレクションの概要数の不確定なデータとマッピング関係のあるデータを保存するために、Javaは集合クラス(コンテナクラスとも呼ばれる)を提供する. のすべての集合クラスはjavaにあります.utilパッケージの下. 配列は、基本タイプの値もオブジェクトも保存できますが、セットにはオブジェクトしか保存できません.(実際には2つのオブジェクトの参照変数が保存されています). Javaの集合クラスは主に2つのインタフェースから派生している:CollectionとMap.これらは、集合フレームワークのルートインタフェースです. 私たちは主に4つの集合を話します:Set、List、Queue、Map.この4つの集合において最もよく用いられる実装クラスは,HashSet,TreeSet,ArrayList,ArrayDeque,LinkedList,HashMap,TreeMapなどである. Setは無秩序集合であり、要素を追加する順序を記憶できないため、Set要素は繰り返すことができない.Setコレクション内の要素にアクセスする場合は、要素自体に基づいてのみアクセスできます. Listは配列に似た秩序化された集合であり、要素を追加するたびに順番を覚え、長さが可変である.リストセットの配列にアクセスすると、要素のインデックスに基づいてアクセスできます. Mapの実装クラスは、マッピング関係を持つデータを保存するために使用され、Mapが保存する各データは、科目名と成績、数学-78、国語-88のようなKey-valueペアである.私たちは通常、成績差科目名ではなく科目名で成績を調べるので、key値は繰り返してはいけません.Mapコレクションの要素にアクセスする場合は、key値に基づいてvalueにアクセスできます.
CollectionとIteratorインタフェース Collectionインタフェースは、Set、List、Queueインタフェースの親インタフェースである.次に、Collectionインタフェースで定義した方法を示します. boolean add(Object o):集合に要素を追加し、集合オブジェクトが追加要素によって変更された場合、true を返します. boolean addAll(Collection c):指定したコレクションにコレクションcのすべての要素を追加します. void clear():コレクション内のすべての要素 をクリア int size():このメソッドは、集合内の要素の個数 を返す. Object[]toArray():コレクションを配列に変換します. boolean contains(Object o):このcollectionに指定した要素が含まれている場合はtrue を返します. boolean containsAll(Collection c):指定したcollectionのすべての要素が含まれている場合は、 boolean isEmpty():このcollectionが空の場合は、 を返します. boolean remove(Object o):指定された要素oをコレクションから削除します.このコレクションに複数のoが含まれている場合、このメソッドは最初のo のみを削除します. boolean removeAll(Collection c):コレクションcに含まれるすべての要素 をコレクションから削除します. Iterator iterator():集合内の要素 を巡回するためのiteratorオブジェクトを返します.
巡回集合 lambda式で集合 を巡回する集合要素をIteratorで巡回 Iteratorインタフェースは主にCollectionコレクション内の要素を巡回(反復アクセス)するために使用され、Iteratorオブジェクトは反復器とも呼ばれる. Iteratorインタフェースの方法は次のとおりです. boolean hasNext():要素が反復可能な場合はtrue を返します. Object next():反復の次の要素 を返します. void remove():反復器が指すcollectionから反復器が返す最後の要素 を除去する.
forEachサイクルで を巡る
CollectionとIteratorインタフェース
true
を返します.true
import java.util.ArrayList;
import java.util.Collection;
public class Demo {
public static void main(String[] args) {
Collection c = new ArrayList();
//
c.add("sehun");
c.add("love");
c.add(777);
System.out.println(" :"+c.size());
//
boolean b1 = c.remove("love");
System.out.println("\"love\" :"+b1);
//
boolean b2 = c.contains("love");
System.out.println(" \"love\":"+b2);
c.clear();
boolean empty = c.isEmpty();
System.out.println(" :"+empty);
}
}
//
:3
"love" :true
"love":false
:true
巡回集合
public class Demo {
public static void main(String[] args) {
Collection c = new ArrayList();
c.add("sehun");
c.add("love");
c.add(777);
// Iterable forEach(Consumer action)
// , lambda
//Iterable Collection , Collection
c.forEach(obj-> System.out.println(obj));
}
}
public class Demo {
public static void main(String[] args) {
Collection c = new ArrayList();
c.add("sehun");
c.add("love");
c.add("p");
// c
Iterator iterator = c.iterator();
while (iterator.hasNext()){
//iterator.next() Object ,
String s = (String)iterator.next();
System.out.println(s);
if(s.equals("love")){
// Iterator Collection ,Collection
// Iterator remove() next() ;
iterator.remove();
//
//c.remove(s);
}
}
System.out.println(c);
}
}
//
sehun
love
p
[sehun, p]
public class Demo {
public static void main(String[] args) {
Collection c = new ArrayList();
c.add("sehun");
c.add("love");
c.add("p");
for (Object obj:c) {
System.out.println(obj);
}
}
}