ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자바 기본 API - ArrayList
    JAVA 2023. 12. 11. 14:46

    ArrayList란?

    • 동적배열이라고 불리기도 한다.
    • 코드상 저장데이터의 접근이 복잡하다
    • 다양한 타입의 데이터를 n개 저장하여 관리하는 객체다.
    • 객체가 추가되어 용량을 초과하면 자동으로 부족한 크기만큼 용량이 늘어난다(동적배열이라 불리는 이유)
    • 동일한 n개의 참조형 데이터 또는 서로다른 n개의 참조형 데이터를 저장하여 관리한다
    • ArrayList객체에는 기본형 데이터 저장은 안된다

     

    이론적으론 기본형 데이터가 저장이 불가능하나,

    기본형 데이터를 관리하는 객체를 이용하면 저장이 가능하다.

    자료형 객체명
    byte Byte
    short Short
    int Integer
    long Long
    double Double
    float Float
    char Character
    boolean Boolean

    형식

    📌int 자료형 예시
    ArrayList<Integer> numList = new ArrayList<Integer>();
    numList.add(new Integer(1));
    numList.add(new Integer(3));
    numList.add(new Integer(4));
    ---------------------------------------------------------
    <방법2>
    ArrayList<Integer> numList = new ArrayList<Integer>();
    numList.add(1);     //자바가 1를 new Integer(1)로 바꿔줌
    numList.add(3);     //자바가 3를 new Integer(3)로 바꿔줌
    numList.add(4);     //자바가 4를 new Integer(4)로 바꿔줌

    객체안의 데이터를 꺼내서 사용할때도 위와같은 방식으로

    제네릭스(generics)를 사용하여 꺼내면 된다.

    특징

    1개의 ArrayList 객체안에 1개의 데이터를 저장할때 마다 1개의 저장소가 만들어지고 이곳의 데이터가 저장된다

    데이터저장소는 순서대로 나열돼 있으며 0번부터 일련번호(index)를 가진다 

    장점

    객체의 메모리주소값 저장시 저장되는 주소값의 개수를 몰라도 된다

    저장될때 마다 자동으로 저장소가 증가되기 때문 

    단점

    • 배열객체보다 데이터를 저장 수정 삭제 읽기시 접근성이 쉽지 않다
    • ArrayList 와 배열객체는 변수명이 아닌 데이터만 봤을때 이 데이터가 어떤 데이터인지 유추할수 없다.
    • Arraylist객체는 출력할때 마다 cast연산자로 형변환을 시켜줘야 한다.

    주요메소드

    size() ArrayList 객체 내부의 저장데이터의 개수를 리턴한다.
    add(Object data) 매개변수로 전달되는
    객체의 메모리 주소를
    ArrayList객체에 저장한다.
    바로 이전에 저장한 객체의
    주소값 다음순서로 저장된다.
    get(int index) 매개변수로 전달되는
    인덱스번호에 해당하는 저장소의
    [객체 주소값]를 리턴한다.
    remove(int index) 매개변수로 전달되는 인덱스번호에 해당하는
    저장소를 삭제한다

    데이터도 삭제된다.
    저장소가 삭제되면 다음 저장소가 삭제된 저장소의 인덱스번호를 가지게 된다.
    clear() 모든 저장소를 삭제한다 모든 데이터도 삭제됨
    set(Object data,int index) 2번째 매개변수로 전달되는 인덱스번호에
    해당하는 저장소에 1번째 매개변수로
    전달되는 [ 객체 주소값 ]로 갱신해 저장

     

     

    'JAVA' 카테고리의 다른 글

    String 객체의 주요메소드  (2) 2023.12.20
    자바 기본 API - HashMap  (0) 2023.12.19
    자바에서 기본 제공하는 API (배열)  (1) 2023.12.08
    인터페이스(interface)  (1) 2023.12.08
    상속  (1) 2023.12.07
Designed by Tistory.