のコレクション
1 、コレクションの概要
コレクションが表示されるのはなぜ?
コレクションの存在は、関数の配列に最適です。
配列とコレクションは、同様のコンテナで、違いは何ですか?
オブジェクトが配列に格納されてもよいが、長さが固定されているが、設定した長さは可変です。アレイは、同じデータ型で参照オブジェクトの組の存在のみを格納することができます。
機能のコレクション:
唯一のオブジェクトのセット、可変長のセットを格納するための、異なるタイプのオブジェクトのコレクションを格納することができます
2 、コレクションインタフェースの概要
コレクションの概要
コレクション階層インタフェースルート。コレクションは、コレクションの要素と呼ばれるオブジェクトのグループを表します。他の人がいない間、いくつかのコレクションは、重複要素を可能にします。他の人が順序付けられていながら、いくつかのコレクションは、発注されます。
コレクション・メソッドインタフェースメンバー
ブールの追加(E電子)//要素を追加し、成功した場合はtrueを返しますが、そうでない場合はfalseを返します。
ブール削除(オブジェクトo)//削除が指定された要素を削除し、成功した場合はtrueを返します、そうでない場合はfalse
明確な空()//すべての要素を削除します
ブールそうでない場合はfalse、//(オブジェクトo)含む要素が真である含まれている含まれてい
ブールのisEmpty()//空の空の真返すかどうか、そうでない場合はfalse
int型のサイズ()//セットの長さを返します。
ブールのaddAll(コレクションC)//すべての要素を追加します
ブールのremoveAll(コレクションC)//すべての要素を削除します
パラメータのブールのcontainsAll(コレクションC)//セットが決定備えることにするかどうか
削除集合の要素以外のブールのretainAll(コレクションC)//パラメータ
オブジェクト[]のtoArray()
配列のセットに有効にするには、のコレクションを達成することができます
イテレータイテレータ()
イテレータ、トラバーサルの専用セット
3 、イテレータインタフェース
イテレータインターフェイスの概要
コレクション・イテレータを実行するために、
それは存在してコレクションに依存します
メンバーの方法:
ブールのhasNext()//次の要素が存在するか否かを判定する
次の()// Eは、次の要素を返します。
4 、リストインタフェースの概要
リストインターフェイスの概要:
(また、配列としても知られる)順序付きコレクション。このユーザインタフェースは、正確に各リスト要素の挿入位置に制御することができます。ユーザは、インデックス(リスト内の位置)の整数ベースの要素にアクセスし、リスト内の要素を検索することができます。
そしてセット異なる、リストのリストは、通常、重複要素を許します。
リストケース
保管文字列とエルゴード
店舗カスタムオブジェクトとトラバース
メンバメソッドインタフェース一覧
目標位置指定された要素に追加し、ボイドの追加(int型のインデックス、Eの要素)//
E削除(int index)指定要素を削除します//
EのGET(int型のインデックス)//は指定された基本となる要素を取得します。
Eセット(int型のインデックス、Eの要素)//設定は、次の要素の対象を指定します
反復子反復子()//はトラバースにイテレータを取得します
5 、反復子のインタフェース方法のメンバー
ブールhasPrevious()
前のE()
6 、共通のデータ構造
スタックファーストアウトした後、最後では、最初のうち
FIFOキュー、堆積した後
見つけるのは簡単で、便利な追加および削除の配列
簡単なリストの追加および削除、便利な検索
ツリー
ハッシュテーブル
7 、のArrayList クラスの概要と使用
ArrayListクラスの概要
データ構造を根底には、配列、クエリの速い、遅いの追加です
スレッドセーフな、高効率
ArrayListのケース
保管文字列とエルゴード
店舗カスタムオブジェクトとトラバース
8 、ベクトルクラスの概要と使用
Vectorクラスの概要
データ構造を根底には、配列、クエリの速い、遅いの追加です
スレッドセーフな、低効率
ベクトルクラス固有の機能
公共のボイドはaddElement(E obj)指定の要素を追加します
公共E elementAt(int index)指定の要素を取得します。
パブリック列挙体の要素()遍历
ベクターケース
保管文字列とエルゴード
店舗カスタムオブジェクトとトラバース
9 、LinkedListののクラスの概要と使用
LinkedListのクラスの概要
基礎となるデータ構造がリストされ、クエリが遅い、速い追加と削除で
スレッドセーフな、高効率
LinkedListのクラス固有の機能
ます。public void addFirst(E e)に及addLast(E e)の
GetLastの及公共E getFirstと()()
公共E removeFirstと()及公共E removeLast()
演習は、コレクション、リストに焦点を当てて、ArrayListには、ベクトル、LinkedListのは、ために強化のためのトラバースには3つの方法、イテレータは、あります。
10 、ジェネリック
なぜジェネリック医薬品はありますか?
初期のオブジェクトタイプは、オブジェクトの任意の型を受け取ることができますが、実際の使用には、問題の型変換があります。このリスクはまた、このセキュリティ上の問題を解決するための汎用Javaを提供し、存在しています。
一般的な用途:
アクティブ位置ジェネリッククラス、インタフェース、メソッド、
ジェネリッククラス:
ジェネリッククラスと呼ばれるクラスへのクラスの一般的な定義
フォーマット:クラスのパブリック・クラス名<ジェネリック型、ジェネリック型、ジェネリック型...>
注意:一般的なクラスは参照型でなければなりません
ジェネリックインターフェイス:
一般的なインタフェースを定義するには
フォーマット:パブリックインターフェイスのインターフェイス名<ジェネリック医薬品、ジェネリック医薬品>
一般的な方法:
この方法の一般的な定義に
フォーマット:パブリック<ジェネリックタイプ>メソッド名戻り型(汎用タイプ){}
ジェネリック最も重要な役割は、パラメータや戻り値の型の規定。
シニアジェネリック(ワイルドカード)
一般的なワイルドカード<?>
いずれのタイプではなく、明示的であれば、そのオブジェクトだけでなく、Javaクラスのいずれかの
?Eは、拡張します
下向きの定義、Eおよびそのサブクラス
?スーパー
上向きに定義され、Eとその親