Java

Java - 자바 List 사용법

codeManager 2022. 6. 9. 19:07
반응형

이번 포스팅은 자바 코딩을 하면서 많이 사용하는 클래스 중 하나인 리스트에 대해서 알아보겠습니다.

 

 

List는 Array와 다르게 크기가 동적인 자료형으로 데이터를 계속 추가 가능

 

List 종류

  • ArrayList
  • LinkedList
  • Vector
  • Stack
List 종류 특징
ArrayList 동기화 지원 안함
가장 빠름
null 허용
인덱스 이용 검색 빠름
대량의 데이터 추가, 삭제 시 성능이 떨어짐
LinkedList 동기화 지원 안함
다음 자료의 위치정보 가지고 있음
속도가 느림
내부 인덱스가 없음
많은 데이터 추가, 삭제 시 용의
검색시 느림
Vector 동기화 지원
ArrayList보다 느림
Stack 동기화 지원
LIFO 가능

 

 

List의 생성

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Vector;
import java.util.Stack;

List<String> list1 = new ArrayList<>();
List list2 = new LinkedList();
List list3 = new Vector();
List list4 = new Stack();

 

배열을 리스트로 변경

Arrays.asList 로 배열을 List 자료형으로 변경한다.

 

import java.util.Arrays;
import java.util.List;

public class HelloWorld {

     public static void main(String []args){
        String[] array = {"A", "B"};
        List<String> list = Arrays.asList(array);
        List<String> list2 = Arrays.asList("list", "array");
        System.out.println(list.get(1)); // B
        System.out.println(list2.get(0)); // list
     }
}

 

자료 추가하기, 값 가져오기

boolean add(E e)

- list의 끝에 값을 추가한다.

get(int index)

- 해당 index의 값을 조회한다.

 

List<String> list = new ArrayList();
list.add("A");
list.add("B");
System.out.println(list.get(1)); // B

 

사이즈 조회

int size()

List<String> list = new ArrayList();
list.add("A");
list.add("B");
System.out.println(list.size()); // 2

 

값 삭제, 값이 있는지 확인

boolean remove(Object o)

boolean contains(Object o)

 

List<String> list = new ArrayList();
list.add("A");
list.add("B");
list.add("C");
list.remove("A");
System.out.println(list.contains("B")); // true
System.out.println(list.contains("A")); // false
반응형