week_02 JAVA 6/?
매개변수와 인자
매개변수 (Parameter)
: 함수 또는 메서드의 정의 부분에서 사용. 함수가 어떤 종류의 입력을 받을 것인지 명시하는 역할.
→ 매개변수는 메서드 내에서 사용 예정인 변수이다. 매개변수는 함수 또는 메서드를 정의할 때 사용된다.
인자 (Argument)
: 함수 또는 메서드를 호출할 때 전달되는 값 또는 표현식.
→ 인자는 메서드 내에서 매개변수에 할당되어 작업을 수행하는 데 사용된다. 함수 또는 메서드를 호출할 때 제공된다.
int num = 123; // num은 변수
sum(num); // num은 인자 (값)
void sum(int num) { // num은 매개변수
System.out.println("sum은 "+num); // num은 인자 (값)
}
'Map instance = new HashMap<>();'
Map 인터페이스와 그를 상속받은 클래스들
: Map 인터페이스를 상속받는 클래스들은 키-값 쌍을 저장하고 관리하는데 사용된다.
다음은 Map 인터페이스를 구현하는 클래스들에 대한 간략한 설명이다.
1. HashMap
- 해시맵으로 구현, 가장 일반적으로 사용되는 Map 구현체 중 하나.
- 키-값 쌍을 해시 함수를 사용하여 저장하고 검색, 빠른 검색 속도 제공.
- 순서 보장 X, 중복 키 허용 X.
2. TreeMap
- 이진 검색 트리로 구현, 정렬된 순서로 키를 저장함.
- 키는 정렬되므로 범위 기반 검색 및 정렬된 결과를 얻을 때 유용.
- 중복 키 허용 X, 키 비교자(Comparator)를 지정 가능.
3. LinkedHashMap
- 해시맵의 확장, 삽입 순서를 보존하는 HashMap (해시맵과 순서의 결합).
- 키-값 쌍을 추가한 순서대로 순회할 수 있음.
4. Hashtable
5. ConcurrentHashMa
6. WeakHashMap
7. EnumMap
(4-7은 다음에...)
→ List와 ArrayList의 경우와 마찬가지로, 이렇게 객체를 인터페이스로 선언하고 하위 클래스로 초기화하면 나중에 해당 인터페이스의 다른 구현체로 쉽게 전환할 수 있으며, 코드의 유지보수와 확장이 더 쉬워진다.
HashMap의 메서드들
(당장 쓸 것 같은 것 위주로)
put(key, value);
: 키-값 쌍 Map에 추가.
get(key);
: 키에 해당하는 값 반환, 없으면 null.
remove(key);
: 키에 해당하는 키-값 쌍 삭제.
containsKey(key);
: 키가 Map에 존재하는지 확인
containsValue(value);
: 값이 Map에 하나 이상 존재하는지 확인
size();
: Map에 저장된 키-값 쌍 개수 반환
isEmpty();
: Map 비었는지 확인
clear();
: Map 비우기
ArrayList의 메서드들
(당장 쓸 것 같은 것 위주로)
add(element);
: List 맨 끝에 요소 추가
add(index, element);
: index 위치에 요소 삽입, 나머지는 하나씩 밀려남(+1).
get(index);
: index 위치의 요소 반환.
set(index, element);
: index 위치의 요소를 새 요소로 대체.
remove(index);
: index 위치의 요소 제거, 나머지는 하나씩 당겨옴(-1).
size();
: List에 저장된 요소 개수 반환.
isEmpty();
: List 비었는지 확인.
clear();
: List 비우기.
indexOf(element);
: 지정된 요소의 첫번째 등장 위치 인덱스 반환, 없으면 -1 반환.
remove(element);
: 지정된 요소 제거.