본문 바로가기

개발언어/Java

| JAVA | Java 컬렉션 이란?

컬렉션

컬렉션이란?
데이터의 집합 및 그룹
개발에 소요되는 시간을 절약하면서 최적화된 개발을 할 수 있다.

1) List : 순서 대로 쌓여있는 구조 (아이템의 중복 허용)
메서드가 많이 있어 쓰기 쉽다!
2) Map : 키(key)와 값(value)의 쌍으로 저장 (키의 중복 불가)
1~10 사물함이 있을때 2번키 로 바로 들어가서 확인할수 있다 그 래서 주소할당되어있는곳에 확인할수잇다
3) Set : 순서가 없는 집합 (중복 불가)

https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html

위 3가지의 사용 방법 및 설명에 대해 상세히 나와있다.

예제 ) 1-1
int , long , boolean == 안됨
int는 integer , Boolean , Long ==가능
Integer 오브젝트로 지우기 인덱스로 지우기 있음

 //int , long , boolean == 안됨
        // int는 integer , Boolean , Long ==가능
        // integer 오브젝트로 지우기 인덱스로 지우기 있음
        List<Integer> nums = new ArrayList<>();
        nums.add(10);
        nums.add(20);
        nums.add(30);
        nums.add(40);
        nums.add(50);
        System.out.println(nums);
        nums.remove(1);
        System.out.println(nums);

예제 ) 1-2 LinkedList 사용 예제

  List<String> foods = new LinkedList<>();
        foods.add("피자");
        foods.add("치킨");
        foods.add("햄버거");
        foods.add("떡볶이");
        System.out.println(foods);

        List<String> favouriteFoods = new ArrayList<>();
        foods.add("과자");
        foods.add("스시");
        foods.add("국");
        foods.add("떡");

        foods.addAll(1, favouriteFoods);
        System.out.println(foods);
        System.out.println(favouriteFoods.add("df"));

예제 ) 1-3

// Generic 리스트 안에 넣고싶은걸 넣어도됨 타입지정 미지정
        List<String> names = new ArrayList<>(); 
        // ArrayList에 toString이 재정의 되어있다.

        names.add("홍길동");
        names.add("홍길동1");
        names.add("홍길동2");
        names.add("홍길동3");
        names.add("홍길동4");

HashSet 사용
HashSet을 사용을 하면 따로 다른 클래스 및 hashcode를 재정의 해주지 않아도 hashSet안에 HashCode가 들어있어 중복코드를 허용하고 있다.

 Set<Hero> heroSet = new HashSet<>();
        heroSet.add(new Hero("슈퍼맨"));
        heroSet.add(new Hero("슈퍼맨"));
        System.out.println(heroSet);

        List<Hero> heroes = new ArrayList<>();
        heroes.add(new Hero("슈퍼맨"));
        System.out.println(heroes.get(0).getName());
        
          Map<Integer, String> box = new HashMap<>();
        box.put(1, "홍길동");
        box.put(2, "감강찬");
        box.put(10, "고길동");
        System.out.println(box);
        box.remove(10);
        System.out.println(box);
        box.put(2, "김철수");
        System.out.println(box);
728x90