0709-JAVA Mapコレクション


0709-JAVA Mapコレクション

Map集合の特徴と主な方法

  • キーと値からなるMap.Entryオブジェクトを格納する構造
  • キーと値はオブジェクトです.
  • キーは繰り返し(X)できませんが、
  • 値記憶可能冗長(O)
  • HashMap, Hashtable, LinkedHashMap, Properties, TreeMap
  • -MAPセット

    //--1. Map 컬렉션 생성
    // Map 요소의 키의 타입 -> String / 값의 타입 -> Integer
    Map<String, Integer> map = new HashMap<>();
    //put 으로 키와 값을 저장
    map.put("홍길동", 90);
    
    //map.size()로 map의 총 엔트리 수를 반환
    map.size()
    
    //get()으로 '키'에 대한 '값'을 반환
    map.get("홍길동") 
    
    //remove()으로 '키'에 대한 '값'을 삭제
    map.remove("홍길동");
    
    //clear()으로 객체 전체 삭제 (자원해제)
    map.clear();
    Mapコレクションでループ
  • for Eachラム茶食ツアー
  • //--1st. method : forEach
    map.forEach( 
    	(k, v) -> { 
    		String formatted = String.format("- name : %s, vlaue : %s", k, v);
    		log.info(formatted);
    	} // BiConsumer<K, V>의 람다식  
    );
  • 反復器(iterator)のhasNext()メソッドを使用して、優先的に巡回する要素があるかどうかを確認します.(true)の場合、反復器のnext()メソッドを使用してオブジェクトを取得できます.
  • //--2st. method : 객체를 하나씩 처리
    Set<String> keySet = map.keySet();
    
    Iterator<String> keyIterator = keySet.iterator();
    
    while(keyIterator.hasNext()) {
    	String key = keyIterator.next();
    	Integer value = map.get(key);
    	
    	log.info("\t" + key + " : " + value);
    }//while
    Objects-helperクラス
    Objects.requireNonNull(map); - パラメータのnullチェックを行い、null以外の値を返します.

    -MAPセットのプロパティ

  • プロパティフィーチャー
  • キーと値をStringタイプのMap Collectionに制限します.
  • プロパティは、主にproperty(@#!@!@!@!@!@!@$.properties)ファイルの取得に使用されます.
  • property(!@#!@#!#!#.properties)ファイル
  • オプション情報、データベース接続情報、国際化情報の記録
  • テキストファイル
  • を使用
  • アプリケーションには、頻繁に変更される文字列が主に格納されます.
  • メンテナンスが便利
  • キーと値が「=」記号で接続されたテキストファイル
  • ISO 8859-1問題集、
  • ハングルはUnicodeストレージに変換された.
  • .処理可能な属性ファイルのMapオブジェクトを使用して属性オブジェクト
  • を作成する.
    Properties properties = new Properties();
  • .propertiesファイルを取得する場所(パス)
  • String path = PropertiesExample.class.getResource("database.properties").getPath();
  • Classspathで見つかったデータベース.propertiesファイルのパスはURLを符号化したので、URL符号化を逆方向に実行して通常のファイルパスを得る.
  • path = URLDecoder.decode(path, "utf-8");
    log.info("- path : " + path);
  • database.propertiesファイルを読み込み、mapオブジェクトにドラッグ(ロード)!
  • properties.load(new FileReader(path));
  • 属性タイプのメソッドには、特定の要素値を返すメソッド、すなわちgetProperty(キー)があります.
  • メソッド、データベース.はpropertiesファイルの値を取得します.
  • String driver = properties.getProperty("driver");
    String url = properties.getProperty("url");
    log.info("driver : " + driver);
    log.info("url : " + url);