[JAVA] ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ

2021. 4. 22. 21:08ยท๐Ÿ“ Language/โœ JAVA

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

์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ฐ์ฒด๋“ค์„ ํšจ์œจ์ ์œผ๋กœ ์ถ”๊ฐ€, ์‚ญ์ œ, ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋„๋ก
์ธํ„ฐํŽ˜์ด์Šค์™€ ๊ตฌํ˜„ ํด๋ž˜์Šค๋ฅผ java.util ํŒจํ‚ค์ง€์—์„œ ์ œ๊ณตํ•˜๋Š”๋ฐ,
์ด๋“ค์„ ์ด์นญํ•ด์„œ ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ผ ๋ถ€๋ฅธ๋‹ค.

 

์ปฌ๋ ‰์…˜์€ ๊ฐ์ฒด์˜ ์ €์žฅ์„ ๋œปํ•˜๊ณ  ํ”„๋ ˆ์ž„์›Œํฌ๋ž€ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์„ ์ •ํ•ด๋†“์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋งํ•˜๋Š”๋ฐ ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์„ ์ •์˜ํ•œ ์ธํ„ฐํŽ˜์ด์Šค์™€ ์‹ค์ œ ๊ฐ์ฒด๋ฅผ ์ €์žฅํ•˜๋Š” ๋‹ค์–‘ํ•œ ์ปฌ๋ ‰์…˜(๊ตฌํ˜„) ํด๋ž˜์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

 

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

 

1. List ์ปฌ๋ ‰์…˜

  • ๊ฐ์ฒด๋ฅผ ์ €์žฅํ•  ๋•Œ ์ž๋™ ์ธ๋ฑ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜๋ฉฐ ์ด ์ธ๋ฑ์Šค๋กœ ๊ด€๋ฆฌ๋œ๋‹ค.
  • ๊ฐ์ฒด ์ž์ฒด๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ ๊ฐ์ฒด์˜ ๋ฒˆ์ง€๋ฅผ ์ฐธ์กฐํ•œ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— null๊ณผ ์ค‘๋ณต ์ €์žฅ๋  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ฐฐ์—ด๊ณผ ๋‹ค๋ฅด๊ฒŒ ์ €์žฅ ์šฉ๋Ÿ‰์ด ์ž๋™์œผ๋กœ ์ฆ๊ฐ€ํ•œ๋‹ค.

 

๋ฉ”์„œ๋“œ ์„ค๋ช…
boolean add(E e) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ๋งจ ๋์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
void add(int index, E element) ์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์— ๊ฐ์ฒด๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
E set(int index, E element) ์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์— ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.
boolean contains(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๊ฐ€ ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์—ฌ๋ถ€๋ฅผ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
E get(int index) ์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์— ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.
boolean isEmpty() ์ปฌ๋ ‰์…˜์ด ๋น„์–ด์žˆ๋Š”์ง€ ์กฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
int size() ์ €์žฅ๋˜์–ด ์žˆ๋Š” ์ „์ฒด ๊ฐ์ฒด ์ˆ˜๋ฅผ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.
void clear() ์ €์žฅ๋œ ๋ชจ๋“  ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.
E remove(int index) ์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์— ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.
boolean remove(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

 

1) ArrayList

ArrayList

 

  • ๊ธฐ๋ณธ์ ์œผ๋กœ 10๊ฐœ์˜ ์ดˆ๊ธฐ ์šฉ๋Ÿ‰์„ ๊ฐ–๊ณ  ์žˆ๋‹ค.
  • ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œํ•  ๋•Œ๋งˆ๋‹ค ์ธ๋ฑ์Šค ์ด๋™์„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ถ”๊ฐ€์™€ ์‚ญ์ œ๊ฐ€ ๋นˆ๋ฒˆํ•  ๋• ์ข‹์ง€ ์•Š๋‹ค.
  • ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•ด ๊ฐ์ฒด๋ฅผ ์ฐพ๊ฑฐ๋‚˜ ๋งˆ์ง€๋ง‰์— ๊ฐ์ฒด๋ฅผ ์ถ”๊ฐ€, ์‚ญ์ œํ•  ๊ฒฝ์šฐ์—” ์ข‹๋‹ค.
List<E> list = new ArrayList<E>();
List<E> list = new ArrayList<>(); // ์ƒ๋žต

 

2) Vector

  • ArrayList์™€ ๋™์ผํ•œ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋ฅผ ๊ฐ–๋Š”๋‹ค.
  • ์Šค๋ ˆ๋“œ ์•ˆ์ „(Thread Safe): ๋™๊ธฐํ™”๋œ ๋ฉ”์†Œ๋“œ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ๊ฐ€ ๋™์‹œ์— Vector์˜ ๋ฉ”์†Œ๋“œ๋“ค์„ ์‹คํ–‰ํ•  ์ˆ˜ ์—†๊ณ , ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ๊ฐ€ ๋ฉ”์†Œ๋“œ ์‹คํ–‰์„ ์™„๋ฃŒํ•ด์•ผ๋งŒ ๋‹ค๋ฅธ ์Šค๋ ˆ๋“œ๊ฐ€ ๋ฉ”์†Œ๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
List<E> list = new Vector<E>();
List<E> list = new Vector<>(); // ์ƒ๋žต

 

3) LinkedList

LinkedList

 

  • ์ธ์ ‘ ์ฐธ์กฐ๋ฅผ ๋งํฌํ•ด์„œ ์ฒด์ธ์ฒ˜๋Ÿผ ๊ด€๋ฆฌํ•œ๋‹ค.
  • ์ฒ˜์Œ ์ƒ์„ฑ๋˜๋ฉด ์–ด๋– ํ•œ ๋งํฌ๋„ ๋งŒ๋“ค์–ด์ง€์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋‚ด๋ถ€๋Š” ๋น„์–ด์žˆ๋‹ค.
  • ํŠน์ • ์ธ๋ฑ์Šค์˜ ๊ฐ์ฒด๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ์•ž๋’ค ๋งํฌ๋งŒ ๋ณ€๊ฒฝ๋˜๊ณ  ๋‚˜๋จธ์ง€ ๋งํฌ๋Š” ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š”๋‹ค.
  • ์ถ”๊ฐ€์™€ ์‚ญ์ œ๊ฐ€ ๋นˆ๋ฒˆํ•˜๊ฒŒ ์ผ์–ด๋‚˜๋Š” ๊ณณ์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์ข‹๋‹ค.
List<E> list = new LinkedList<E>();
List<E> list = new LinkedList<>(); // ์ƒ๋žต

 

2. Set ์ปฌ๋ ‰์…˜

๊ฐ์ฒด์˜ ์ €์žฅ ์ˆœ์„œ๋ฅผ ์œ ์ง€ํ•˜์ง€ ์•Š๊ณ  ์ค‘๋ณต ์ €์žฅ์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.

 

๋ฉ”์„œ๋“œ ์„ค๋ช…
boolean add(E e) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ์ €์žฅ ํ›„ ์„ฑ๊ณต์ด๋ฉด true๋ฅผ ์ค‘๋ณต ๊ฐ์ฒด๋ฉด false๋ฅผ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.
boolean contains(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๊ฐ€ ์ €์žฅ๋˜์–ด์žˆ๋Š”์ง€ ์กฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
Iterator<E> iterator() ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ ํ•œ ๋ฒˆ์”ฉ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐ˜๋ณต์ž๋ฅผ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.
boolean isEmpty() ์ปฌ๋ ‰์…˜์ด ๋น„์–ด์žˆ๋Š”์ง€ ์กฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
int Size() ์ €์žฅ๋˜์–ด ์žˆ๋Š” ์ „์ฒด ๊ฐ์ฒด ์ˆ˜๋ฅผ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.
void clear() ์ €์žฅ๋œ ๋ชจ๋“  ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.
boolean remove(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

 

1) Iterator

Set ์ปฌ๋ ‰์…˜์€ ์ธ๋ฑ์Šค๋กœ ๊ฐ์ฒด๋ฅผ ๊ฒ€์ƒ‰ํ•ด์„œ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— iterator๋ฅผ ํ†ตํ•ด ๋ฐ˜๋ณตํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค.

Iterator<String> iter = set.iterator();
while (iter.hasNext()) {
	string str = iter.next();
	if (str.equals("์ด๋ฆ„"))
		iter.remove();
}

 

2) HashSet

  • HashSet์ด ํŒ๋‹จํ•˜๋Š” ๋™์ผํ•œ ๊ฐ์ฒด๋ž€ ๊ผญ ๊ฐ™์€ ์ธ์Šคํ„ด์Šค๋ฅผ ๋œปํ•˜์ง€๋Š” ์•Š๋Š”๋‹ค.
  • hashCode()์™€ equals() ๋ฉ”์†Œ๋“œ ์žฌ์ •์˜๋ฅผ ํ†ตํ•ด ๋™๋“ฑํ•œ ๊ฐ์ฒด๋กœ ๊ฐ„์ฃผํ• ์ง€ ๊ฒฐ์ •ํ•œ๋‹ค. 
Set<E> set = new HashSet<E>();
Set<E> set = new HashSet<>(); // ์ƒ๋žต

 

๋™๋“ฑ ๊ฐ์ฒด ํŒ๋‹จ

  1. ๊ฐ์ฒด๋ฅผ ์ €์žฅํ•˜๊ธฐ ์ „์— hashCode() ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์„œ ์ด ์ฝ”๋“œ๋กœ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๊ฐ์ฒด๋“ค๊ณผ ๋น„๊ตํ•œ๋‹ค.
  2. ๋งŒ์•ฝ ๋™์ผํ•œ ํ•ด์‹œ ์ฝ”๋“œ๊ฐ€ ์žˆ๋‹ค๋ฉด equals() ๋ฉ”์†Œ๋“œ๋กœ ๋‘ ๊ฐ์ฒด๋ฅผ ๋น„๊ตํ•œ๋‹ค.
  3. true๊ฐ€ ๋‚˜์˜ค๋ฉด ๋™์ผํ•œ ๊ฐ์ฒด๋กœ ํŒ๋‹จํ•˜๊ณ  ์ค‘๋ณต ์ €์žฅ์„ ํ•˜์ง€ ์•Š๋Š”๋‹ค.

 

3. Map ์ปฌ๋ ‰์…˜

  • ํ‚ค๊ณผ ๊ฐ’์œผ๋กœ ๊ตฌ์„ฑ๋œ Map.Entry ๊ฐ์ฒด๋ฅผ ์ €์žฅํ•˜๋Š” ๊ตฌ์กฐ๋กœ Entry๋Š” Map ๋‚ด๋ถ€์— ์„ ์–ธ๋œ ์ค‘์ฒฉ ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค.
  • ํ‚ค๋Š” ์ค‘๋ณต ์ €์žฅ๋  ์ˆ˜ ์—†์ง€๋งŒ ๊ฐ’์€ ์ค‘๋ณต ์ €์žฅ๋  ์ˆ˜ ์žˆ๋‹ค.
  • ์ €์žฅ๋œ ์ „์ฒด ๊ฐ์ฒด๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋‚˜์”ฉ ์–ป๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ์—๋Š”
    • keySet() ๋ฉ”์†Œ๋“œ๋กœ ๋ชจ๋“  ํ‚ค๋ฅผ Set ์ปฌ๋ ‰์…˜์œผ๋กœ ์–ป์€ ๋‹ค์Œ, ๋ฐ˜๋ณต์ž๋ฅผ ํ†ตํ•ด ํ‚ค๋ฅผ ํ•˜๋‚˜์”ฉ ์–ป๊ณ  get() ๋ฉ”์†Œ๋“œ๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ์–ป๋Š”๋‹ค.
    • entrySet() ๋ฉ”์†Œ๋“œ๋กœ ๋ชจ๋“  Map.Entry๋ฅผ Set ์ปฌ๋ ‰์…˜์œผ๋กœ ์–ป์€ ๋‹ค์Œ, ๋ฐ˜๋ณต์ž๋ฅผ ํ†ตํ•ด Map.Entry๋ฅผ ํ•˜๋‚˜์”ฉ ์–ป๊ณ  getKey()์™€ getValue() ๋ฉ”์†Œ๋“œ๋ฅผ ํ†ตํ•ด ํ‚ค์™€ ๊ฐ’์„ ์–ป๋Š”๋‹ค.

 

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

 

1) HashMap

  • ํ‚ค๋กœ ์‚ฌ์šฉํ•  ๊ฐ์ฒด๋Š” hashCode()์™€ equals() ๋ฉ”์†Œ๋“œ๋ฅผ ์žฌ์ •์˜ํ•ด์„œ ๋™๋“ฑ ๊ฐ์ฒด๊ฐ€ ๋  ์กฐ๊ฑด์„ ์ •ํ•ด์•ผ ํ•œ๋‹ค.
Map<K, V> map = new HashMap<K, V>();
Map<K, V> map = new HashMap<>(); // ์ƒ๋žต

 

2) Hashtable

  • HashMap๊ณผ ๋™์ผํ•œ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋ฅผ ๊ฐ–๊ณ  ๋™์ผํ•˜๊ฒŒ hashCode()์™€ equals() ๋ฉ”์†Œ๋“œ ์žฌ์ •์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
  • ์Šค๋ ˆ๋“œ ์•ˆ์ „(Thread Safe): ๋™๊ธฐํ™”๋œ ๋ฉ”์†Œ๋“œ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ๊ฐ€ ๋™์‹œ์— Hashtable์˜ ๋ฉ”์†Œ๋“œ๋“ค์„ ์‹คํ–‰ํ•  ์ˆ˜ ์—†๊ณ , ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ๊ฐ€ ๋ฉ”์†Œ๋“œ ์‹คํ–‰์„ ์™„๋ฃŒํ•ด์•ผ๋งŒ ๋‹ค๋ฅธ ์Šค๋ ˆ๋“œ๊ฐ€ ๋ฉ”์†Œ๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
Map<K, V> map = new Hashtable<K, V>();
Map<K, V> map = new Hashtable<>(); // ์ƒ๋žต

 

4. LIFO์™€ FIFO ์ปฌ๋ ‰์…˜

 

1) LIFO(Last In First Out) Stack

๋‚˜์ค‘์— ๋„ฃ์€ ๊ฐ์ฒด๊ฐ€ ๋จผ์ € ๋น ์ ธ๋‚˜๊ฐ€๋Š” ๊ตฌ์กฐ์ด๋‹ค.

 

๋ฉ”์†Œ๋“œ ์„ค๋ช…
E push(E item) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ์Šคํƒ์— ๋„ฃ์Šต๋‹ˆ๋‹ค.
E peek() ์Šคํƒ์˜ ๋งจ ์œ„ ๊ฐ์ฒด๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๊ฐ์ฒด๋ฅผ ์Šคํƒ์—์„œ ์ œ๊ฑฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
E pop() ์Šคํƒ์˜ ๋งจ ์œ„ ๊ฐ์ฒด๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๊ฐ์ฒด๋ฅผ ์Šคํƒ์—์„œ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.
Stack<E> stack = new Stack<E>();
Stack<E> stack = new Stack<>(); // ์ƒ๋žต

 

2) FIFO(First In First Out) Queue

๋จผ์ € ๋„ฃ์€ ๊ฐ์ฒด๊ฐ€ ๋จผ์ € ๋น ์ ธ๋‚˜๊ฐ€๋Š” ๊ตฌ์กฐ์ด๋‹ค.

 

๋ฉ”์†Œ๋“œ ์„ค๋ช…
boolean offer(E e) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ํ์— ๋„ฃ์Šต๋‹ˆ๋‹ค.
E peek() ๊ฐ์ฒด ํ•˜๋‚˜๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๊ฐ์ฒด๋ฅผ ํ์—์„œ ์ œ๊ฑฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
E poll() ๊ฐ์ฒด ํ•˜๋‚˜๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๊ฐ์ฒด๋ฅผ ํ์—์„œ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.
Queue<E> queue = new Queue<E>();
Queue<E> queue = new Queue<>(); // ์ƒ๋žต

// LinkedList๋Š” List ์ปฌ๋ ‰์…˜์˜ ๊ตฌํ˜„ ํด๋ž˜์Šค์ด๊ธฐ๋„ ํ•˜์ง€๋งŒ Queue ์ปฌ๋ ‰์…˜์˜ ๊ตฌํ˜„ ํด๋ž˜์Šค๋„ ๋  ์ˆ˜ ์žˆ๋‹ค.
Queue<E> queue = new LinkedList<>(); 
์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)
'๐Ÿ“ Language/โœ JAVA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • Spring๊ณผ SpringBoot
  • [JAVA] ์ž…์ถœ๋ ฅ ์ŠคํŠธ๋ฆผ
  • [JAVA] ์Šค๋ ˆ๋“œ
  • [JAVA] ๊ธฐ๋ณธ API ํด๋ž˜์Šค
Blxxming
Blxxming
CS ์ง€์‹๊ณผ ๊ณต๋ถ€ํ•˜๋‹ค ๋ฐฐ์šด ๊ฒƒ, ๊ฒฝํ—˜ํ•œ ๊ฒƒ ๋“ฑ์„ ๊ธฐ๋กํ•˜๋Š” ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹ค.
  • Blxxming
    ๐Ÿ’ก๋ฒˆ๋œฉ๐Ÿ’ก
    Blxxming
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
  • ๊ณต์ง€์‚ฌํ•ญ

    • Tech Interview
    • ๐Ÿ“š Tech (246)
      • ๐Ÿ“ Computer Science (96)
        • โœ OS (12)
        • โœ Network & Web (10)
        • โœ Database (11)
        • โœ Data Structure (6)
        • โœ Algorithm (40)
        • โœ Design Pattern (9)
        • โœ Cloud Computing (3)
        • โœ (5)
      • ๐Ÿ“ Language (73)
        • โœ Language (6)
        • โœ C & C++ (11)
        • โœ C# (19)
        • โœ JAVA (37)
      • ๐Ÿ“ Game (43)
        • โœ Computer Graphics (2)
        • โœ Unity (14)
        • โœ Unreal (26)
        • โœ (1)
      • ๐Ÿ“ Book (34)
        • โœ Effective (3)
        • โœ Game Server (16)
        • โœ Clean Code (14)
        • โœ (1)
  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.0
Blxxming
[JAVA] ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ
์ƒ๋‹จ์œผ๋กœ

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