16.集合フレーム(ArayList、泛型)


目次
  • 16.01_集合フレーム(ArayListにおける重複文字列要素の除去)
  • 16.02_集合フレーム(ArayListにおけるカスタムオブジェクト要素の繰り返しを除去)
  • 16.03_集合フレーム(LinkdList特有機能)
  • 16.04_集合フレーム(スタックとキューデータ構造)
  • 16.05_集合フレーム(LinkdListでスタックデータ構造の集合をシミュレートしてテストする)
  • 16.06_集合フレームワーク(一般的な概要と基本的な使用)
  • 16.07_セットフレーム(ArayList)
  • 16.08_集合フレーム(汎型の由来)
  • 16.09_集合フレームワーク(一般クラスの概要と使用)
  • 16.10_集合フレームワーク(一般的な方法の概要と使用)
  • 16.11_集合フレームワーク(汎用インターフェースの概要と使用)
  • 16.12_集合フレーム(汎型高級のワイルドカード)
  • 16.13_集合フレームワーク(拡張forの概要と使用)
  • 16.14_集合フレーム(ArayList)
  • 16.15_集合フレーム(3つの反復の削除可)
  • 16.16_セットフレーム(スタティック導入の概要と使用)
  • 16.17_集合フレーム(可変パラメータの概要と使用)
  • 16.18_集合フレーム(Araysツール類のasList()方法の使用)
  • 16.19_セットフレーム(セットネストのArayListネスト)
  • 16.01_集合フレーム(ArayListの重複文字列要素を除去する方式)(把握)
  • A:判例デモ
  • 需要:ArayListは、セット中の文字列の重複値(文字列の内容が同じ)を除去する
  • 考え方:新しいセット方式
      /**
       *  A:    
       *   :ArrayList            (        )
       *   :       
       */
      public static void main(String[] args) {
      	ArrayList list = new ArrayList();
      	list.add("a");
      	list.add("a");
      	list.add("b");
      	list.add("b");
      	list.add("b");
      	list.add("c");
      	list.add("c");
      	list.add("c");
      	list.add("c");
      	
      	System.out.println(list);
      	ArrayList newList = getSingle(list);
      	System.out.println(newList);
      }
    
      /*
       *     
       * 1,  ArrayList
       * 2,    ArrayList
       */
      public static ArrayList getSingle(ArrayList list) {
      	ArrayList newList = new ArrayList();			//       
      	Iterator it = list.iterator();					//     
      	while(it.hasNext()) {							//           
      		String temp = (String)it.next();			//           
      		if(!newList.contains(temp)) {				//            
      			newList.add(temp);						//           
      		}
      	}
      	return newList;									//      
      }
    
  • を作成する.
    16.02_集合フレーム(ArayListの重複したカスタムオブジェクト要素を除去)(把握)
  • A:判例デモ
  • 需要:ArayListは、セット内のカスタムオブジェクト要素の重複値(オブジェクトのメンバー変数値が同じ)を除去する
  • .
  • B:注意事項
  • equals()方法の書き換え
  • 16.03_集合フレーム(Linked Listの特有機能)(把握)
  • A:Linked Listクラス概要
  • B:Linked List類特有の機能
  • public void addFirst(E e)及びaddLast(E e)
  • public E getFirst()及びget Last()
  • public E removeFirst()及びpublic E removelast()
  • public E get(int index);
  • 16.04_集合フレーム(スタックとキューデータ構造)(把握)
  • スタック
  • 先進後
  • を出します.
  • は先に
  • を出します.
    16.05_集合フレーム(LinkdListでスタックデータ構造の集合をシミュレートしてテストする)(把握)
  • A:判例デモ
  • 需要:LinkdListアナログスタックデータ構造のセットを使って、
  • をテストしてください.
  • は、Linked内の方法をパッケージ化するクラス
  • を作成する.
  •   public class Stack {
      	private LinkedList list = new LinkedList();		//  LinkedList  
      	
      	public void in(Object obj) {
      		list.addLast(obj);							//  addLast()  
      	}
      	
      	public Object out() {
      		return list.removeLast();					//  removeLast()  
      	}
      	
      	public boolean isEmpty() {
      		return list.isEmpty();						//  isEmpty()  
      	}
      }
    
  • 16.06_集合フレーム(一般的な概要と基本的な使用)(把握)
  • A:汎型概説
  • B:汎型メリット
  • 安全性を高める(運転期間のエラーをコンパイル期間に変換する)
  • 強転の手間を省きます.
  • C:汎型基本使用
  • <>には参照データタイプが必要です.
  • D:汎型使用上の注意事項
  • 前後の汎型が一致しなければならない、または後の汎型が省略されてもよい(1.7の新しい特性の菱形汎型)
  • 16.07_集合フレーム(ArayList)は、文字列とカスタムオブジェクトを記憶し、パンチングバージョンを巡回します.(マスター)
  • A:判例デモ
  • ArayListは文字列を格納し、パンチングバージョン
  • を巡回する.
    16.08_集合フレーム(汎型の由来)(了解)
  • A:判例デモ
  • 汎型の由来:Objectの転換問題を通じて
  • を導入した.
  • 初期のObjectタイプは、任意のオブジェクトタイプを受信することができますが、実際の使用では、タイプ変換の問題があります.このような潜在的な危険があるので、Javaは一般的にこの安全問題を解決するために提供しています.
  • 16.09_集合フレーム(汎型クラスの概要と使用)(了解)
  • A:一般クラスの概要
  • 汎型をクラスに定義する
  • B:フォーマットを定義する
  • pblicクラス名
  • C:注意事項
  • 汎型タイプは、引用タイプ
  • でなければならない.
  • D:判例デモ
  • 汎型類の使用
  • 16.10_集合フレームワーク(汎型方法の概要と使用)(了解)
  • A:一般的な方法の概要
  • 汎型を方法に定義する.
  • B:フォーマットを定義する
  • publicリターンタイプ名(汎型変数名)
  • C:判例デモ
  • 一般的な方法の使用
  • 16.11_集合フレーム(汎型インターフェースの概要と使用)(了解)
  • A:一般インターフェースの概要
  • 一般型をインターフェースに定義する
  • B:フォーマットを定義する
  • pblic interfaceインターフェース名
  • C:判例デモ
  • 汎用インターフェースの使用
  • 16.12_集合フレーム(汎型高級のワイルドカード)(了解)
  • A:ワイルドカード>
  • 任意のタイプで、もし明確でないならば、Objectと任意のJava種類です.
  • B:extens E
  • 以下に限定して、Eとそのサブ
  • C:super E
  • 上限にします.Eとその親
  • 16.13_集合フレーム(拡張forの概要と使用)(把握)
  • A:拡張forの概要
  • は、配列とCollectionのセットを簡略化する
  • を巡回する.
  • B:フォーマット:
  •   for(          :     Collection  ) {
      	      ,       
      }
    
  • C:判例デモ
  • 配列、セット記憶要素は拡張フォーマットで
  • を巡回します.
  • D:メリット
  • 簡略エルゴード
  • 16.14_集合フレーム(ArayList)は、文字列とカスタムオブジェクトを記憶し、拡張forバージョンを巡回します(マスター)
  • A:判例デモ
  • ArayListは文字列を記憶し、拡張forバージョン
  • を巡回します.
  •   ArrayList list = new ArrayList<>();
      list.add("a");
      list.add("b");
      list.add("c");
      list.add("d");
      
      for(String s : list) {
      	System.out.println(s);
      }
    
  • 16.15_集合フレーム(3つの反復の削除可)
  • 普通forループは削除できますが、インデックスは–
  • です.
  • ローズマリーは削除できますが、ローズマリー自体のremove方法を使用しなければなりません.そうでなければ、同時修正異常が発生します.
  • 拡張forサイクルは
  • を削除できません.
    16.16_集合フレーム(静的導入の概要と使用)(把握)
  • A:静的導入概要
  • B:フォーマット:
  • import staticパッケージ名...クラス名.メソッド名;
  • は、直接に方法のレベル
  • に導入することができる.
  • C:注意事項
  • 方法は静的でなければなりません.同名の静的方法が複数あると、誰を使うか分かりません.この時に使用するには、プレフィックスを追加しなければなりません.このことから分かるように、意味は大きくないので、普通は使わないですが、分かります.
  • 16.17_集合フレーム(可変パラメータの概要と使用)(把握)
  • A:可変パラメータの概要
  • 方法を定義するとき、どれぐらいのパラメータが定義されているか分かりません.
  • B:フォーマット
  • 修饰子戻り値タイプ方法名(データタイプ...変数名){}
  • C:注意事項:
  • ここの変数は、実は1つの配列
  • です.
  • 、一つの方法に可変パラメータがあり、複数のパラメータがある場合、可変パラメータは最後の
  • に違いない.
    16.18_集合フレーム(Araysツール類のasList()方法の使用)(把握)
  • A:判例デモ
  • Araysツール類のasList()方法の使用
  • CollectionにおけるtoAray(T[]a)汎型版の集合行列
  • 16.19_集合フレーム(セットネストのArayListネスト)(マスター)
  • A:判例デモ
  • セットネストされたArayList