[JAVA] 컬랙션 프레임워크

Jiyeong·2023년 3월 8일
0

JAVA

목록 보기
1/2

컬랙션 프레임워크

밸로그 첫 포스팅!✨

아마 여기에선 자바 스터디를 기억하고자 쓰는 것이기 때문에 자바, 스프링 내용이 될 것 같다.
첫 포스팅 내용은 컬랙션 프레임워크다.

항상 파이썬만 사용하다가 자바를 공부하니까 제공하는 프레임워크가 많이 다름을 새삼 느낀다..
둘 다 능숙해지는 그날까지!


⛳ 대표 인터페이스

  • List 인터페이스, Set 인터페이스, Map 인터페이스

✔️ List 인터페이스의 특징은..

순서가 있고,
데이터의 중복이 허용되며,
ArrayList, LinkedList, Vector 등으로 구현이 가능하다

list.add(1);
list.add(2);
list.add(3);
System.out.println("list =", list);
>> list = [1,2,3]

list.remove(Integer.valueOf(2));
System.out.println("list =", list);
>> list = [1,3]

list.add(0,10); // 0번째 인덱스에 10을 add
System.out.println("list =", list);
>> list = [10,1,3]

✔️ Set 인터페이스의 특징은..

순서가 없으며,
데이터의 중복을 허용하지 않는다.
HashSet, TreeSet 등으로 구현이 가능하다.

HashSet set = new HashSet();
set.add(1);
set.add(2);
set.add(2);
System.out.println("set =", set);
>> set = [1,2]

set.remove(1); // 바로 value값으로 제거가 가능하다
System.out.println("set =", set);
>> set = [2]

System.out.println(set.contains(2));
>> true

✔️ Map 인터페이스의 특징은..

키와 값의 쌍으로 이루어져있다. (파이썬의 딕셔너리와 같은 역할)
순서가 없으며,
HashMap, TreeMap 으로 구현이 가능하다.

HashMap map = new HashMap();
map.put(1,"kiwi);
map.put(2, "apple");
map.put(3, "banana");
System.out.println(map);
>> map = {1=kiwi, 2=apple, 3=banana};

map.remove(2); // key값이 2인 값을 제거
System.out.println(map);
>> map = {1=kiwi, 3=banana};

System.out.println(map.get(1)); // get(key)을 통해 value 가져오기 
>>kiwi


+) Set을 사용해서 로또 번호 6개 생성하기

LinkedList를 이용해서 오름차순으로 보기 좋게 출력하였다.

HashSet set = new HashSet();

for(int i=0;set.size()<6;i++){
	int num = (int)(Math.random() * 45) + 1;
    set.add(num);
}

LinkedList list = new LinkedList(set);
Collections.sort(list);
System.out.println(list);

>>
[6, 12, 18, 29, 42, 43]
profile
Drill처럼 파고들자 🔥

0개의 댓글