데블 아니고 데블리

운동,햄버거, 개발 좋아요

🐷💻📝

항해99 취업 리부트 코스 학습일지

[항해99 취업 리부트 코스 학습일지] 2024.03.28.(목)

데블아니고데블리 2024. 3. 28. 22:00

와 벌써 목요일 시간 엄청 빠르다.

 

오늘도 백준을 풀며 하루를 보냈는데! 

새로 알게 된 것들이 많다.

 

1. StringTokenizer 안에 countTokens() 메서드

- StringTokenizer객체를 생성할 때 문자열과 구분자를 지정하고, nextToken()메서드를 활용하여 토큰을 하나씩 가지고 온다

- countTokens()는 아직 처리하지 않은 토큰의 개수를 알고자 할 때 유리하다.

 

[예제]

StringTokenizer st = new StringTokenizer("Devely is Smart");
System.out.println(st.countTokens()); // 출력: 3

 

 

2. map.getOrderDefault(습관적으로만 썼다.. 이번기회에 깊게 공부해보는걸로)

- Map안에 들어있는 메서드 중 하나로 지정된 키의 값(value)를 반환하거나 기본값(default)를 반환할 때 사용한다.

// key : 찾고자 하는 키
// defaultValue : 해당 키가 존재하지 않을 경우 반환할 기본 값

V value = map.getOrDefault(key, defaultValue);

 

[예제]

//핸드폰번호와 이름이 짝꿍 : 핸드폰 번호가 키, 값은 이름
//회원가입할 때 중복가입방지는 핸드폰번호나 이메일로 조회하니까..
Map<String, String> map = new HashMap<>();
map.put("010-1234-5678","데블리");
map.put("010-9876-5432", "임개발");

int name1 = map.getOrDefault("010-1234-5678", 0); // "010-1234-5678" 의 값인 "데블리"를 반환
int name2 = map.getOrDefault("010", "키없음"); // "010" 키가 존재하지 않으므로 기본값인 "키없음"을 반환

 

3. Map.Entry<Character, Integer> entry : map.entrySet()

 Map.Entry<Character, integer>은  Map의 키와 쌍을 나타내는 인터페이스고 entrySet()을 사용하면 맵에 있는 각각의 카-값 쌍을 Set<Map.Entry<K, V>> 형태로 바꿀 수 있다

- 고로.. 맵에 있는 모든 키-값 쌍을 반복적으로 접근할 수 있다. 다시말해 맵의 포문..이라고,, 생각한다.

// map에 있는 각 키-값 쌍을 반복하여 키와 값을 출력한다.
// entry,getKey(): 키 값 반환, entry.getValue(); 는 해당 키의 값을 반환
Map<Character, Integer> map = new HashMap<>();
map.put('a', 1);
map.put('b', 2);
map.put('c', 3);

for (Map.Entry<Character, Integer> entry : map.entrySet()) {
    System.out.println("Key는? " + entry.getKey() + ", Value는? " + entry.getValue());
}

// 출력 결과
//Key는? a, Value는? 1
//Key는? b, Value는? 2
//Key는? c, Value는? 3