[TIL] 231013 Map : getOrDefault()

CountryGirlยท2023๋…„ 10์›” 13์ผ
0

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
77/80

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด์„œ ์ƒˆ๋กœ์šด ๊ฑฐ ๋งŽ์ด ์•Œ๊ฒŒ ๋˜๋Š” ์ค‘์ด๋‹ค!!
์ˆ˜์ค€์€ ์‹ ์ƒ์•„์ง€๋งŒ..

์˜ค๋Š˜์€ Map ์„ ์‚ฌ์šฉํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค.

๋‚ด๊ฐ€ ์˜๋„ํ•œ ๊ฒƒ์€ ๋ฌธ์ž์—ด X ๋ฅผ ๋Œ๋‹ค๊ฐ€ ์ƒˆ๋กœ์šด ๋ฌธ์ž๋ฉด key ๋กœ ์ถ”๊ฐ€๋ฅผ ํ•˜๊ณ  ๋งŒ์•ฝ ์ด๋ฏธ ์žˆ๋Š” ๋ฌธ์ž๋ฉด value ๋ฅผ 1 ๋”ํ•ด์ฃผ๋Š” ๊ฒƒ์ด์—ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” if ์™€ else ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค.

String X = "asdfkdsf";

for (String s : X.split("")) {
    if (!xMap.containsKey(s)) xMap.put(s, 1);
    else xMap.put(s, xMap.get(s) + 1);
}

โœ… getOrDefault()

: ์ฐพ๋Š” ํ‚ค๊ฐ€ ์žˆ๋‹ค๋ฉด ์ฐพ๋Š” ํ‚ค์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ์—†๋‹ค๋ฉด ๊ธฐ๋ณธ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์„œ๋“œ

๐Ÿ“Œ Parameter

getOrDefault(key, defaultValue)

ํ‚ค์™€ ๊ธฐ๋ณธ ๊ฐ’์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋„ฃ์–ด์ค€๋‹ค.

๋‚˜๋Š” getOrDefault() ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์œ„์— if ์™€ else ๋กœ ๋งŒ๋“ค์—ˆ๋˜ ๊ฒƒ์„ ์ˆ˜์ •ํ•˜์˜€๋‹ค.

String X = "asdfkdsf";

for (String s : X.split("")) {
    xMap.put(s, xMap.getOrDefault(s, 0) + 1);
}

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด,
์ฐพ๋Š” ํ‚ค๊ฐ€ ์—†๋‹ค๋ฉด ๊ธฐ๋ณธ ๊ฐ’ 0์— 1์„ ๋”ํ•  ๊ฒƒ์ด๊ณ , ์žˆ๋‹ค๋ฉด ํ•ด๋‹น ํ‚ค์˜ ๊ฐ’์— 1์„ ๋”ํ•  ๊ฒƒ์ด๋‹ค.

profile
๐Ÿ’ป๐ŸŒพ์‹œ๊ณจ์†Œ๋…€์˜ ์—‰๋ง์ง•์ฐฝ ๊ฐœ๋ฐœ ์„ฑ์žฅ์ผ์ง€๐ŸŒพ๐Ÿ’ป (2023.05.23 ~)

0๊ฐœ์˜ ๋Œ“๊ธ€