JAVA DAY22 - HashMap

어뮤즈온·2020년 12월 15일
0

초급자바

목록 보기
30/31

HashMap

  • Object put(Object key, Object value) : 지정된 키와 값을 저장한다.
  • Object remove(Object key) : 지정된 키로 저장된 값을 제거한다.
  • Object get(Object key) : 지정된 키의 값(없으면 null)을 반환한다.
  • Set KeySet( ) : 저장된 모든 키를 Set으로 반환한다.

put()

HashMap<String, Object> map = new HashMap<>( ); //제네릭 두개를 지정

map.put("a", 10);
map.put("b", "홍길동");
map.put("c", new Scanner(System.in));
//Object 타입은 모든 타입을 저장할 수 있다.

* key는 임의로 지정하기 때문에 순서라는 개념이 없다.

map.put("b", "이순신"); 
//덮어쓰기 -> 하나의 key는 하나의 값만 저장할 수 있다.

remove()

map.remove("c");

get()

Object value = map.get("b");
//타입에 맞는 변수를 만들어서 출력

int value1 = (Integer)map.get("a");
String value2 = (String)map.get("b");

KeySet()

Set<String> keys = map.keySet(); //저장된 모든 키

for(String key : keys){ //타입에 맞는 변수 선언
//향상된 for문 : keys라는 set을 String key라는 변수에 넣는다.
	System.out.println(key + " : " + map.get(key));
}

ArrayList랑 같이 쓰기 😂

//회원테이블
//아이디, 비밀번호, 이름, 전화번호
HashMap<String, String> user = new HashMap<>(); //테이블의 한 행
user.put("id", "admin");
user.put("password", "admin123");
user.put("name", "관리자");
user.put("tel", "010-1234-5678");
		
ArrayList<HashMap<String, String>> table = new ArrayList<>();
//여러개의 행을 하나의 묶음으로 저장하는 table
table.add(user);

user = new HashMap<>();
ser.put("id", "admin2");
user.put("password", "admin1234");
user.put("name", "관리자2");
user.put("tel", "010-1234-5679");
		
table.add(user);

//출력하기
for(int i = 0; i < table.size(); i++){
	HashMap<String, String> hashmap = table.get(i);
	//접근을 줄이기 위해 for문 안에서 hashmap 선언
	Set<String> keySet = hashmap.keySet();
	for(String key : keySet){
		System.out.println(key + " : " + hashmap.get(key));
	}
	System.out.println("--------------------------------");
}

profile
Hello, world!

0개의 댓글