##JAVA에서의 map set list

#Map

키(key)와 값(value)의 쌍으로 이루어진 데이터의 집합이다.
순서는 유지되지 않고, 키는 중복을 허용하지 않으며 값의 중복을 허용한다.

#Set

순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용하지 않는다.

#List

순서가 있는 데이터의 집합, 데이터의 중복을 허용한다.



##JAVA SCRIPT에서의 map set array

Map객체의 key에 대한 동치성 비교와 Set객체의 값에 대한 동치성 비교 모두 “same-value-zero algorithm”에 근거한다.

동치성 비교는 === 비교 연산과 같이 작동한다.
-0과 +0은 같다고 간주한다.
NaN는 자기 자신하고 같다고 간주한다. (===와는 반대로)

#Map

키(key)와 값(value)의 쌍으로 이루어진 데이터의 집합이다.
키는 객체도 가능하다.
for .. of 와 같은 반복문 사용시 삽입된 순서대로 반복된다.
객체(Object)에는 prototype이 있어 Map에 기본 키들이 있다. (이것은 map = Object.create(null) 를 사용하여 우회할 수 있다. )

#Set

배열에선 해당 요소를 배열에서 잘라내야 하는 반면 Set객체는 요소의 값으로 해당 요소를 삭제하는 기능 제공한다.(indexOf는 느리다)
Set객체는 값의 유일성을 보장하기 때문에 직접 요소의 중복성을 확인할 필요가 없다.

#Array
키로 숫자를 가지며 값들의 중복을 허용한다.