put(key, value) : 키와 값 넣기
get(key) : 키로 값 꺼내기
remove(key) : 키로 값 삭제하기
containsKey(key) : 해당 키가 있는지 확인하기
containsValue(value) : 해당 값이 있는지 확인하기
keySet() : 모든 키 반환
values() : 모든 값 반환
size() : 저장된 쌍의 개수 반환
entrySet() : 전체 조회
어떤 key값(이름)에 value값(내용)을 저장 => 이름으로 내용 찾기 편함
정해진 순서가 없으며, value값은 중복이 가능해도 key값은 중복 불가
import java.util.HashMap; // 기능 호출하기
HashMap<String, Integer> map = new HashMap <> ();
map.put("a", 100) // a, 100 추가, a는 키값
map.size() // 크기를 알려줌
map.get("a") // 100출력
map.remove("a") // 키값만 입력하면 됨, 삭제
map.clear() // 전체 삭제
import java.util.Scanner;
import java.util.HashMap;
class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
HashMap<String, String> map = new HashMap<> ();
System.out.print("이름을 입력해 주세요 : ");
String name = sc.nextLine();
System.out.print("전화번호를 입력해 주세요 : ");
String number = sc.nextLine();
map.put(name, number);
if (map.containsKey(name)) {
for (String key : map.keySet()) {
System.out.println(key + " " + map.get(key));
}
}
}
}
순서, 중복을 허용하지 않는 데이터의 집합
import java.util.HashSet; // 기능 호출하기
HashSet<String> set = new HashSet<> ();
set.add("a") // a추가
set.contains("a") // a가 있는지 여부 판단 => true
set.size // 크기 알려줌
set.remove("a") // a삭제
set.clear() // 전체 삭제
연결리스트, 데이터의 빠른 삽입 + 삭제
LinkedList<String> list = new LinkedList<> ();
list.add // 추가
list.get() // 가져오기
list.getFirst // 처음 요소 가져오기
list.getLast // 마지막 요소 가져오기
list.addFirst // 맨 앞에 추가
list.addLast // 맨 뒤에 추가
컬렉션의 모든 데이터를 순회
import java.util.Iterator; // 기능 호출하기
public class Main{
public static void main(String[] args){
ArrayList<String> list = new ArrayList<>();
list.add("철수");
list.add("영희");
//이터레이터로 변경
Iterator<String> it = list.iterator();
//리스트로부터 이터레이트를 얻어온다.
while(it.hasNext()){
System.out.println(it.next());
}
}
}
hasNext - 다음 요소 확인 // it.hasNext() //true
next - 다음 요소 가져오기 // it.next() // "철수"
remove - 삭제 it.remove() // {}