KKG
Programming
KKG
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ์ „์ฒด ๊ธ€ ๋ณด๊ธฐ (84)
    • ํšŒ๊ณ  (9)
    • Bootcamp (19)
    • Error Handling (2)
    • Kotlin (1)
    • Java (19)
      • Java (14)
      • Spring (1)
      • JPA (2)
      • Link (2)
    • Python (5)
    • ์•Œ๊ณ ๋ฆฌ์ฆ˜ (20)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ (4)
      • ๋ฐฑ์ค€ (14)
      • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค (1)
      • Link (1)
    • SQL (5)
      • SQL (1)
      • MySQL (4)
    • Web (2)
    • etc (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก
  • ๊นƒํ—ˆ๋ธŒ

์ธ๊ธฐ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
KKG

Programming

Java - ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ
Bootcamp

Java - ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ

2022. 7. 14. 16:11

๐Ÿ“š ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ (Collection Framework)

https://medium.com/@parkdohee19931129/java-3%EC%A3%BC%EC%B0%A8-collection-map-calendar-a9ca0d290a36

 

๐Ÿ“˜ Collection ์ธํ„ฐํŽ˜์ด์Šค

๊ธฐ๋Šฅ ๋ฆฌํ„ด ํƒ€์ž… ๋ฉ”์„œ๋“œ ์„ค๋ช…
๊ฐ์ฒด
์ถ”๊ฐ€
boolean add(Object o) /
addAll(Collection c)
์ฃผ์–ด์ง„ ๊ฐ์ฒด ๋ฐ ์ปฌ๋ ‰์…˜์˜ ๊ฐ์ฒด๋“ค์„ ์ปฌ๋ ‰์…˜์— ์ถ”๊ฐ€
๊ฐ์ฒด
๊ฒ€์ƒ‰
boolean contains(Object o) /
containsAll(Collection c)
์ฃผ์–ด์ง„ ๊ฐ์ฒด ๋ฐ ์ปฌ๋ ‰์…˜์ด ์ €์žฅ๋˜์–ด ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋ฆฌํ„ด
  Iterator iterator() ์ปฌ๋ ‰์…˜์˜ iterator๋ฅผ ๋ฆฌํ„ด
  boolean equals(Object o) ์ปฌ๋ ‰์…˜์ด ๋™์ผํ•œ์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธ
  boolean isEmpty() ์ปฌ๋ ‰์…˜์ด ๋น„์–ด์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธ
  int size() ์ €์žฅ๋˜์–ด ์žˆ๋Š” ์ „์ฒด ๊ฐ์ฒด ์ˆ˜๋ฅผ ๋ฆฌํ„ด
๊ฐ์ฒด
์‚ญ์ œ
void clear() ์ปฌ๋ ‰์…˜์— ์ €์žฅ๋œ ๋ชจ๋“  ๊ฐ์ฒด๋ฅผ ์‚ญ์ œ
  boolean remove(Object o) /
removeAll(Collection c)
์ฃผ์–ด์ง„ ๊ฐ์ฒด ๋ฐ ์ปฌ๋ ‰์…˜์„ ์‚ญ์ œํ•˜๊ณ  ์„ฑ๊ณต ์—ฌ๋ถ€๋ฅผ ๋ฆฌํ„ด
  boolean retainAll(Collection c) ์ฃผ์–ด์ง„ ์ปฌ๋ ‰์…˜์„ ์ œ์™ธํ•œ ๋ชจ๋“  ๊ฐ์ฒด๋ฅผ ์ปฌ๋ ‰์…˜์—์„œ ์‚ญ์ œํ•˜๊ณ ,
์ปฌ๋ ‰์…˜์— ๋ณ€ํ™”๊ฐ€ ์žˆ๋Š”์ง€์˜ ์—ฌ๋ถ€๋ฅผ ๋ฆฌํ„ด
๊ฐ์ฒด
๋ณ€ํ™˜
Object[] toArray() ์ปฌ๋ ‰์…˜์— ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ๊ฐ์ฒด๋ฐฐ์—ด(Object [])๋กœ ๋ฆฌํ„ด
  Object[] toArray(Object[] a) ์ฃผ์–ด์ง„ ๋ฐฐ์—ด์— ์ปฌ๋ ‰์…˜์˜ ๊ฐ์ฒด๋ฅผ ์ €์žฅํ•ด์„œ ๋ฆฌํ„ด

 

๐Ÿ“˜ List ์ธํ„ฐํŽ˜์ด์Šค

๊ธฐ๋Šฅ ๋ฆฌํ„ด ํƒ€์ž… ๋ฉ”์„œ๋“œ ์„ค๋ช…
๊ฐ์ฒด
์ถ”๊ฐ€
void add(int index, Object element) ์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์— ๊ฐ์ฒด๋ฅผ ์ถ”๊ฐ€
  boolean addAll(int index, Collection c) ์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์— ์ปฌ๋ ‰์…˜์„ ์ถ”๊ฐ€
  Object set(int index, Object element) ์ฃผ์–ด์ง„ ์œ„์น˜์— ๊ฐ์ฒด๋ฅผ ์ €์žฅ
๊ฐ์ฒด
๊ฒ€์ƒ‰
Object get(int index) ์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์— ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜
  int indexOf(Object o) /
lastIndexOf(Object o)
์ˆœ๋ฐฉํ–ฅ / ์—ญ๋ฐฉํ–ฅ์œผ๋กœ ํƒ์ƒ‰ํ•˜์—ฌ ์ฃผ์–ด์ง„ ๊ฐ์ฒด์˜ ์œ„์น˜๋ฅผ ๋ฐ˜ํ™˜
  ListIterator listIterator() /
listIterator(int index)
List์˜ ๊ฐ์ฒด๋ฅผ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ๋Š”ListIterator ๋ฐ˜ํ™˜ /
์ฃผ์–ด์ง„ index๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ๋Š” ListIterator ๋ฐ˜ํ™˜
  List subList(int fromIndex, int toIndex) fromIndex๋ถ€ํ„ฐ toIndex์— ์žˆ๋Š” ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜
๊ฐ์ฒด
์‚ญ์ œ
Object remove(int index) ์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์— ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•˜๊ณ  ์‚ญ์ œ๋œ ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜
  boolean remove(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ์‚ญ์ œ
๊ฐ์ฒด
์ •๋ ฌ
void sort(Comparator c) ์ฃผ์–ด์ง„ ๋น„๊ต์ž(comparator)๋กœ List๋ฅผ ์ •๋ ฌ

List ๊ตฌํ˜„ ํด๋ž˜์Šค

  • ArrayList, LinkedList

 

๐Ÿ“˜ Iterator ์ธํ„ฐํŽ˜์ด์Šค

๋ฉ”์„œ๋“œ ์„ค๋ช…
hasNext() ์ฝ์–ด์˜ฌ ๊ฐ์ฒด๊ฐ€ ๋‚จ์•„ ์žˆ์œผ๋ฉด true๋ฅผ ๋ฆฌํ„ดํ•˜๊ณ , ์—†์œผ๋ฉด false๋ฅผ ๋ฆฌํ„ด
next() ์ปฌ๋ ‰์…˜์—์„œ ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋ฅผ ์ฝ์–ด์˜จ๋‹ค. ์ด ๋•Œ, next()๋ฅผ ํ˜ธ์ถœํ•˜๊ธฐ ์ „์— hasNext()๋ฅผ ํ†ตํ•ด ์ฝ์–ด์˜ฌ ๋‹ค์Œ ์š”์†Œ๊ฐ€ ์žˆ๋Š”์ง€ ๋จผ์ € ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค.
remove() next()๋ฅผ ํ†ตํ•ด ์ฝ์–ด์˜จ ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•œ๋‹ค. next()๋ฅผ ํ˜ธ์ถœํ•œ ๋‹ค์Œ์— remove()๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•œ๋‹ค.

 

๐Ÿ“˜ Set ์ธํ„ฐํŽ˜์ด์Šค

๊ธฐ๋Šฅ ๋ฆฌํ„ด ํƒ€์ž… ๋ฉ”์„œ๋“œ ์„ค๋ช…
๊ฐ์ฒด
์ถ”๊ฐ€
boolean add(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , ์„ฑ๊ณตํ•˜๋ฉด true๋ฅผ, ์ค‘๋ณต ๊ฐ์ฒด๋ฉด false๋ฅผ ๋ฐ˜ํ™˜
๊ฐ์ฒด
๊ฒ€์ƒ‰
boolean contains(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๊ฐ€ Set์— ์กด์žฌํ•˜๋Š”์ง€ ํ™•์ธ
  boolean isEmpty() Set์ด ๋น„์–ด์žˆ๋Š”์ง€ ํ™•์ธ
  Iterator Iterator() ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ํ•˜๋‚˜์”ฉ ์ฝ์–ด์˜ค๋Š” ๋ฐ˜๋ณต์ž๋ฅผ ๋ฆฌํ„ด
  int size() ์ €์žฅ๋˜์–ด ์žˆ๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ์ˆ˜๋ฅผ ๋ฆฌํ„ด
๊ฐ์ฒด
์‚ญ์ œ
void clear() Set์— ์ €์žฅ๋˜์–ด์ ธ ์žˆ๋Š” ๋ชจ๋“  ๊ฐ์ฒด๋ฅผ ์‚ญ์ œ
  boolean remove(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ์‚ญ์ œ

Set ๊ตฌํ˜„ ํด๋ž˜์Šค

  • HashSet, TreeSet

 

๐Ÿ“˜ Map ์ธํ„ฐํŽ˜์ด์Šค

๊ธฐ๋Šฅ ๋ฆฌํ„ด ํƒ€์ž… ๋ฉ”์„œ๋“œ ์„ค๋ช…
๊ฐ์ฒด
์ถ”๊ฐ€
Object put(Object key, Object value) ์ฃผ์–ด์ง„ ํ‚ค๋กœ ๊ฐ’์„ ์ €์žฅ. ํ•ด๋‹น ํ‚ค๊ฐ€ ์ƒˆ๋กœ์šด ํ‚ค์ผ ๊ฒฝ์šฐ null์„ ๋ฆฌํ„ดํ•˜์ง€๋งŒ, ๋™์ผํ•œ ํ‚ค๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ์—๋Š” ๊ธฐ์กด์˜ ๊ฐ’์„ ๋Œ€์ฒดํ•˜๊ณ  ๋Œ€์ฒด๋˜๊ธฐ ์ด์ „์˜ ๊ฐ’์„ ๋ฆฌํ„ด
๊ฐ์ฒด
๊ฒ€์ƒ‰
boolean containsKey(Object key) ์ฃผ์–ด์ง„ ํ‚ค๊ฐ€ ์žˆ์œผ๋ฉด true, ์—†์œผ๋ฉด false๋ฅผ ๋ฆฌํ„ด
  boolean containsValue(Object value) ์ฃผ์–ด์ง„ ๊ฐ’์ด ์žˆ์œผ๋ฉด true, ์—†์œผ๋ฉด false๋ฅผ ๋ฆฌํ„ด
  Set entrySet() ํ‚ค์™€ ๊ฐ’์˜ ์Œ์œผ๋กœ ๊ตฌ์„ฑ๋œ ๋ชจ๋“  Map.Entry ๊ฐ์ฒด๋ฅผ Set์— ๋‹ด์•„์„œ ๋ฆฌํ„ด
  Object get(Object key) ์ฃผ์–ด์ง„ ํ‚ค์— ํ•ด๋‹นํ•˜๋Š” ๊ฐ’์„ ๋ฆฌํ„ด
  boolean isEmpty() ์ปฌ๋ ‰์…˜์ด ๋น„์–ด ์žˆ๋Š”์ง€ ํ™•์ธ
  Set keySet() ๋ชจ๋“  ํ‚ค๋ฅผ Set ๊ฐ์ฒด์— ๋‹ด์•„์„œ ๋ฆฌํ„ด
  int size() ์ €์žฅ๋œ Entry ๊ฐ์ฒด์˜ ์ด ๊ฐฏ์ˆ˜๋ฅผ ๋ฆฌํ„ด
  Collection values() ์ €์žฅ๋œ ๋ชจ๋“  ๊ฐ’์„ Collection์— ๋‹ด์•„์„œ ๋ฆฌํ„ด
๊ฐ์ฒด
์‚ญ์ œ
void clear() ๋ชจ๋“  Map.Entry(ํ‚ค์™€ ๊ฐ’)์„ ์‚ญ์ œ
  Object remove(Object key) ์ฃผ์–ด์ง„ ํ‚ค์™€ ์ผ์น˜ํ•˜๋Š” Map.Entry๋ฅผ ์‚ญ์ œํ•˜๊ณ  ๊ฐ’์„ ๋ฆฌํ„ด

Map ๊ตฌํ˜„ ํด๋ž˜์Šค

  • HashMap, HashTable

 

๐Ÿ“Œ ์ฐธ๊ณ  ๋งํฌ

ArrayList ๊ณต์‹ ๋ฌธ์„œ

HashSet ๊ณต์‹ ๋ฌธ์„œ

TreeSet ๊ณต์‹ ๋ฌธ์„œ

HashMap ๊ณต์‹ ๋ฌธ์„œ

    'Bootcamp' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • Java - ๋žŒ๋‹ค, ์ŠคํŠธ๋ฆผ, Optional
    • Java - ์—ด๊ฑฐํ˜•, ์• ๋„ˆํ…Œ์ด์…˜
    • Java - ์ œ๋„ค๋ฆญ
    • Java - ๋‹คํ˜•์„ฑ, ์ถ”์ƒํ™”

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”