List vs ArrayList

CYSSSSSSSSS·2024년 4월 17일
0

자바

목록 보기
18/26

Java

List vs ArrayList

List

  • List는 인터페이스로 공통되는 메서드를 추출해 놓은 클래스이다.
  • 즉 넓은 개념인 형태이고 ArrayList와 LinkedList가 등이 포함되어 있는 형태이다.
  • 특징은 선언을 할때 인터페이스 이기 때문에 사용자가 사용하고 싶은 형태의 클래스를 바꿔주면서 사용할 수 있다.
package array;

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

public class List1 {
    public static void main(String[] args) {
        // 선언
        List<Integer> list1 = new ArrayList<Integer>();
        
        // 인터페이스 이기떄문에 중간에 클래스를 변경 할 수 있다.
        list1 = new LinkedList<Integer>();

    }
}

ArrayList

  • 하나의 클래스로 크게 일반 클래스와 추상 메서드가 하나 이상 있거나 abstract로 정의된 추상 클래스로 나뉜다.
  • 실제로 ArrayList를 파보면 List를 인터페이스로 사용하여 구현하는 구조를 볼 수 있다.
  • 추가적으로 배열의 단점인 고정길이의 단점을 극복하여 가변적인 길이로 데이터를 사용할 수 있다.
package array;

import java.util.ArrayList;

public class ArrayList1 {
    public static void main(String[] args) {
        //선언
        ArrayList<Integer> arrayList = new ArrayList<Integer>();

        // 데이터 추가 add(data)
        arrayList.add(1);
        arrayList.add(2);
        // 특정 아이템을 읽고 싶을때 get(index)
        System.out.println(arrayList.get(0));

        // 특정 아이템의 값을 변경하고 싶을때 set(index , data)
        arrayList.set(0 , 5);
        System.out.println(arrayList.get(0));

        // 특정 인덱스의 데이터를 삭제하고 싶을때 remove(index)
        arrayList.remove(0);
        System.out.println(arrayList.get(0));

        // 배열의 사이즈 size()
        System.out.println(arrayList.size());
    }
}
profile
개발자 되고 싶어요

0개의 댓글

관련 채용 정보