마케팅스프린트
[ GitHub ]

[ jungyijun@naver.com ]


  • Category
    • 마케팅 자동화
    • old posting
      • ChatGPT
      • Java
      • MySQL
      • JSP
      • Spring Framework
      • Node.js
Total
Today
Yesterday
hELLO · Designed By 정상우.
[Java] Generic 클래스와 Collection 그리고 List
old posting/Java

[Java] Generic 클래스와 Collection 그리고 List

2021. 2. 28. 17:46

Generic 클래스

: 클래스의 멤버변수나 혹은 메소드의 리턴 "타입", 매개변수등의 "타입"을 지정하지 않고 generic(일반적으로)하게 정의하는 클래스

* 동작은 같으나, 데이터 타입만 다른 경우 Generic으로 설계함으로 코드 생산성 향상

* Generic 클래스에서 사용되는 타입은 기본 자료형(primitive type)은 사용될 수 없고, Object타입의 자료형들만 사용할 수 있다.

 

* List 특징(ArrayList와 LinkedList의 공통점)

1. 중복 저장 허용

2. 저장 순서 유지(인덱스 존재)

 

* ArrayList

1. 저장 용량을 늘리는데 많은 시간 소요 - 단점

2. 데이터를 삭제하는데 많은 연산 - 단점

3. 데이터 참조가 매우 빠름 - 장점

 

* LinkedList

1. 저장 용량을 늘리는 과정이 매우 간단 - 장점

2. 데이터를 삭제하는 과정이 간단 - 장점

3. 데이터 참조가 불편 - 단점

 

List Method

* list.add(element) : 데이터 추가(저장)

* list.add(index, element) : index에 데이터 삽입

* list.get(index) : 데이터 참조(읽기, 검색)

* list.remove(index) : 데이터 삭제

* list.set(index, element) : 데이터 수정

* list.size() : List의 크기를 리턴

 

List 출력 방법

1. for 사용

2. Enhanced-for(향상된 for문) 사용

3. forEach() 사용

4. Iterator(반복자) 사용

* iterator() 메소드를 사용해서 인스턴스 생성 ex) Iterator<Integer> itr = list.iterator();

* hasNext() : iterator가 다음 원소를 가지고 있는 지(true, false 리턴)

* next() : 현재 iterator 위치의 원소 값을 리턴하고, iterator의 위치를 다음 원소의 위치로 변경

저작자표시
'old posting/Java' 카테고리의 다른 글
  • [Java] 시간복잡도와 공간복잡도 그리고 내부클래스, 중첩클래스, 익명클래스
  • [Java] Set과 Map 그리고 iterator(반복자)
  • [Java] Wrapper 클래스와 Auto-boxing 그리고 unboxing
  • [Java] String 관련 메소드와 StringBuffer, StringBuilder 그리고 StringTokenizer
마케팅스프린트
마케팅스프린트
쿠팡, 스마트스토어 자동화 솔루션

티스토리툴바