문준영
새벽 코딩
문준영
전체 방문자
오늘
어제
  • 분류 전체보기
    • 웹 개발
    • JAVA
      • 기본 문법 내용 정리
      • 함수 내용 정리
      • 쉽게 배우는 자바 프로그래밍 문제 풀이
    • HTML
      • HTML
      • CSS
      • 문제풀이
    • JavaScript
    • MYSQL
    • C
      • 기본 문법 내용 정리
      • 백준 알고리즘 (c언어)
      • 자료구조
    • Python
      • 참고 알고리즘
      • 기본 문법 내용 정리
      • 자료구조 내용 정리
      • 백준 알고리즘 (파이썬)
    • 깃허브
    • 멀티잇 풀스택

티스토리

hELLO · Designed By 정상우.
문준영

새벽 코딩

JAVA/기본 문법 내용 정리

컬렉션과 제네릭

2021. 10. 29. 15:24

 

컬렉션
  • 배열과 컬렉션의 차이

     배열: 고정 크기, 배열의 중간에 객체가 삭제되면 응용프로그램에서 자리를 옮겨야하는 불편함

     컬렉션: 가변 크기, 컬렉션 중간에 객체가 삭제되면 컬렉션이 자동으로 자리를 옮겨준다.

 

 

  • 컬렉션의 의미

     컬렉션은 고정 크기의 배열의 단점을 극복하고, 요소라고 불리는 객체들의 삽입,선택,검색 기능을 갖춘

     가변 크기의 컨테이너이다.

 

  • 컬렉션의 특징

     1. 컬렉션은 제네릭기법으로 구현돼 있다. 

       <E>, <K>, V>는 컬렉션 요소를 일반화 시킨 것으로 쉽게말해

        제네릭은 클래스에서 사용할 타입을 외부에서 지정한다라고 생각하면 된다.

 

       컬렉션은 여러 타입의 원소들을 다룰 수 있도록 변신이 가능하지만 컬렉션을 생성하고 사용할 때는

       단 하나의 타입 값만 저장하고 다룰 수 있다. 

 

   2. 컬렉션의 요소는 객체들만 가능하다.

 

BoxMap<String,Integer> bm1=new BoxMap<String, Integer>("홍길동",20);
System.out.println(bm1.getOne()); // 홍길동
        
BoxMap<Integer,String> bm2=new BoxMap<Integer,String>(19,"이순신");
System.out.println(bm2.getOne()); // 19
cs
이와 같이 여러 자료형을 원하는대로 사용할 수 있다.

 

  • Vector 

Vector<E>는 배열을 가변크기로 다룰 수 있게하며, 객체의 삽입,삭제,이동이 쉽도록 구성된 컬렉션 클래스이다.

 

컬렉션 프레임워크
인터페이스 특징
List 순서가 있는 데이터의 집합, 데이터 중복 허용

ex) ArrayList, LinkedList, Stack, Vector ..등
Set 순서를 유지하지 않는 데이터의 집합, 데이터 중복 미허용

ex) HashSet, TreeSet .. 등
Map key - value로 구성된 데이터의 집합, key 중복 미허용, value 중복 허용

ex) HashMap, TreeMap.. 등

'JAVA > 기본 문법 내용 정리' 카테고리의 다른 글

Swing 컴포넌트  (0) 2021.11.03
자바 GUI 기초  (0) 2021.10.29
입출력  (0) 2021.10.07
인터페이스 & 추상 클래스  (0) 2021.10.05
배열 [ ] & enum  (0) 2021.10.05
    'JAVA/기본 문법 내용 정리' 카테고리의 다른 글
    • Swing 컴포넌트
    • 자바 GUI 기초
    • 입출력
    • 인터페이스 & 추상 클래스
    문준영
    문준영
    공부한 내용 정리!

    티스토리툴바