기초자바프로그래밍 2020/10/05 HashMapClass

 package j_collection;


import java.util.ArrayList;

import java.util.Date;

import java.util.HashMap;

import java.util.Set;


public class HashMapClass {


public static void main(String[] args) {

// TODO Auto-generated method stub


/*

* Object put(Object key , Object value ) : 지정된 키와 값을 저장한다.

* Object value : 저장할 값 

* Object remove(Object key ) : 지정된 키로 저장된 값을 제거한다. ( 키와 값을 삭제를 한다. ) 

* Object get (Object key) : 지정된 키의값(없으면 null ) 을 반환한다. 

* Set keySet () : 저장된 모든 키를 Set 으로 반환한다.  ( 모든 키들만 가지고 온다. SET 이라는 형태 ) 

*   Set 특징 : 중복되는 것은 저장이 안된다. 

* 인덱스에 저장을 하는게 아니라 key 를 만들어서 key에 저장을 한다. 

* 순서가 없다.  

*/

HashMap<String, Object> map = new HashMap<>(); //해쉬멥 객체생성

//<> 제네릭  //컬렉션 

map.put("a", 10); 

map.put("b", "홍길동"); 

    map.put("c", new Date()); 

     

    System.out.println(map);

    

   // 출력되는 순서가 없다. 

    

    map.put("b", "이순신"); // 덮어쓴다. 

    

    System.out.println(map);

    

map.remove("a"); 

System.out.println(map);

      Object value = map.get("b");

System.out.println(value);

Set<String> keys = map.keySet(); // 저장된 모든 키를 돌려준다. 

for(String key : keys){

System.out.println(key + " : " + map.get(key));

}

// for ( String key : keys ) 

//keys 값이 key 에 넣어서 실행을 한다. keys 값이 다 뽑힐 때 까지 

// 데이터베이스와 연관해서 사용할때 Hashmap 을 사용하거나 Class 를 사용하여 각각 컬럼을 저장해서 데이터를 저장할 수 있다. 

HashMap<String, Object > lprod = new HashMap<>(); 

lprod.put("LPROD_ID", 1); 

lprod.put("LPROD_GU" , "P101"); 

lprod.put("LPROD_NM", "컴퓨터제품");

ArrayList<HashMap<String, Object >> table = new ArrayList<>(); 

table.add(lprod); 

System.out.println(table); 

lprod = new HashMap<>(); 

lprod.put("LPROD_ID" , 2); 

lprod.put("LPROD_GU" , "P102");

lprod.put("LPROD_NM" , "전자제품"); 

table.add(lprod); 

System.out.println(table);

//변수의 이름 바꾸기 ctrl + 1 -> rename 

HashMap<String, Object> dept = new HashMap<>(); 

dept.put("deptno", "10"); 

dept.put("dname", "ACCOUNTING");

dept.put("LOC", "NEW YORK"); 

ArrayList<HashMap<String, Object>> dept_table  = new ArrayList(); 

    dept_table.add(dept); 

    System.out.println(dept_table);

    dept = new HashMap<>();

    

    dept.put("deptno", "20"); 

dept.put("dname", "RESEARCH");

dept.put("LOC", "DALLAS"); 

dept_table.add(dept);

System.out.println(dept_table);

dept = new HashMap<>(); 

dept.put("deptno", "30"); 

dept.put("dname", "SALES");

dept.put("LOC", "CHICAGO"); 

dept_table.add(dept); 

 

dept.put("deptno", "40"); 

dept.put("dname", "OPERATIONS");

dept.put("LOC", "BOSTON"); 

 

dept_table.add(dept); 

 

 

System.out.println(dept_table);

 

for ( int i = 0 ; i < dept_table.size(); i++){

HashMap<String , Object> d = dept_table.get(i); 

Set<String> keyset = d.keySet(); 

for( String key : keyset){ 

System.out.println(key + " : "  + d.get(key));

}

System.out.println("-------------------------------------");

}


//간단하게 써주기 

/* for ( int i = 0 ; i < dept_table.size(); i++){

HashMap<String , Object> d = dept_table.get(i); 

for( String key : d.keyset()){ 

System.out.println(key + " : "  + d.get(key));

 

 

*/

 

 

}


}


댓글