MapEntry ์ธํฐํ์ด์ค
- Map์ธํฐํ์ด์ค์ ๋ด๋ถ ์ธํฐํ์ด์ค.
- Map์ ์ ์ฅ๋๋ Key-Value๋ฅผ ์์ผ๋ก ๋ค๋ฃจ๋ ค๊ณ Entry๋ฅผ ๋ด๋ถ์ ์ผ๋ก ์ ์ํด๋์.
- HashMap ํด๋์ค๋ด๋ถ์ Entry[ ] ํ์ ์ ํ ์ด๋ธ ํ๋๊ฐ ์์.
HashMap๊ณผ HashTable
- ํค&๊ฐ์ ๋ฌถ์ด์ ํ๋์ ๋ฐ์ดํฐ๋ก ์ ์ฅํจ.
- โํด์ฑโ์ ์ฌ์ฉํด์ ๋ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ ๋ ๋ฐ์ด๋ ์ฑ๋ฅ์ ๋ณด์ฌ์ค
- HashMap์ Entry๋ผ๋ ๋ด๋ถ์ธํฐํ์ด์ค๋ฅผ ์ ์ํจ.
- Entryํ์ ์ ๋ฐฐ์ด ์ ์ธ ํ ํค์ ๊ฐ์ Objectํ์ ์ผ๋ก ์ ์ฅ๋จ.
- ํค๋ ์ ์ฅ๋ ๊ฐ์ ์ฐพ๋๋ฐ ์ฌ์ฉ๋๋ฏ๋ก ์ ์ผํด์ผํจ.
- HashMap์ ๊ฐ์ผ๋ก ๋ค์ HashMap์ ์ฅ ๊ฐ๋ฅ.
- โํด์ฑโ: ํด์ํจ์๋ฅผ ์ด์ฉํด์ ๋ฐ์ดํฐ๋ฅผ ํด์ํ ์ด๋ธ์ ์ ์ฅํ๊ณ ๊ฒ์ํ๋ ๊ธฐ๋ฒ
- ํด์ฑ์์ ์ฌ์ฉํ๋ ์๋ฃ๊ตฌ์กฐ: ๋ฐฐ์ด+๋งํฌ๋๋ฆฌ์คํธ
ํด์ฑ
- ๋ฐฐ์ด+๋งํฌ๋๋ฆฌ์คํธ
- ๋ฐฐ์ด(๋น ๋ฅธ์ ๊ทผ ์ ๋ฆฌ, ์ฐพ๊ธฐ ์ฝ๊ฒ) + ๋งํฌ๋๋ฆฌ์คํธ (์ ์ฐ, ๋ณ๊ฒฝ ์ ๋ฆฌ)
- ํด์ฑ ๊ตฌํ๊ณผ์ ์์ ํด์ํจ์์ ์๊ณ ๋ฆฌ์ฆ์ด ์ค์ํจ.
- Objectํด๋์ค์ hashCode( )๋ ๊ฐ์ฒด์ ์ฃผ์๋ฅผ ์ด์ฉํ๋ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํด์์ฝ๋๋ฅผ ๋ง๋ค์ด๋.
- ๋ชจ๋ ๊ฐ์ฒด์ ๋ํด hashCode( )๋ฅผ ํธ์ถํ ๊ฒฐ๊ณผ๊ฐ ์๋ก ์ ์ผํ ํ๋ฅญํ ๋ฐฉ๋ฒ.
hashCode( ) ์ค๋ฒ๋ผ์ด๋ฉ ์กฐ๊ฑด
- โ ๋์ผ ๊ฐ์ฒด์ ๋ํด hashCode( )๋ฅผ ์ฌ๋ฌ๋ฒ ํธ์ถํด๋ ๊ฐ์ ๊ฐ์ ๋ฐํํด์ผํจ.
- โกequals( )๋ก ๋น๊ตํด์ true๋ก ์ป์ ๋ ๊ฐ์ฒด์ hashCode( )๊ฐ์ ์ผ์นํด์ผํจ.
- โขequals( )๋ก false์ธ ๋ ๊ฐ์ฒด์ hashCode( ) ํธ์ถ์์๋ ๋๋๋ก ๋ค๋ฅธ int๊ฐ์ ๋ฐํํด์ผํจ.
- ์์) public int hashCode( )
{ return (name+age).hashCode( ); }
โณ Objects.hash( iv );
'๐ฅ๏ธ ๋ฐฑ์๋ > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ch.11] ์ง๋ค๋ฆญ์ค (0) | 2023.11.14 |
---|---|
[ch.11] ์ปฌ๋ ์ ํ๋ ์์ํฌ (0) | 2023.11.14 |
[ch.11] ์ปฌ๋ ์ ํ๋ ์์ํฌ Set (1) | 2023.11.14 |
[ch.11] ์ปฌ๋ ์ ํ๋ ์์ํฌ ๊ฐ์ ๋ฐ List (0) | 2023.11.14 |
[ch.9] java.lang ํจํค์ง์ ์ ์ฉํ ํด๋์ค (0) | 2023.11.13 |