본문 바로가기

JAVA/복습

Java - List

List

List는 배열과 비슷하게 사용되는 자료구조

 

배열과 리스트의 다른 점은

 

배열은 한번 생성하면 크기가 변경되지 않는 자료구조이지만

List는 저장 공간이 필요에 따라서 자동으로 늘어날 수 있는 자료구조이다.

 

이러한 list에는 데이터의 중복이 있을 수 있고, 순서도 있다.

 


List 인터페이스로 import할 때 주의할 점.

 

java.awt - 클래스

java.util - 인터페이스 

 

 


List 인터페이스를 구현하는 클래스를 사용하는 방법


List 선언 제너릭을 이용해서 String 값만 담을 수 있도록 정의.
List도 인터페이스이기때문에 리스트가 인스턴스가 될 수 없다.
이런 리스트를 구현하고 있는 가장 많이 사용되는 ArrayList<>()를 생성

List<String> list = new ArrayList<>();


 리스트에 데이터를 넣기

list.add("KIM");
list.add("HONG");
list.add("KIM");


리스트에 저장된 자료의 수를 출력받을 수 있는 size() 호출
이런 size()는 리스트 부모인터페이스인 콜렉션인터페이스가 가지고 있는 메소드.

System.out.println(list.size()); // 출력 : 3 - 리스트는 똑같은 값이 중복되게 들어갈 수 있다



 리스트에서 값을 꺼내오기

 

리스트는 순서가 있는 자료구조이기때문에 인덱스를 이용해서 값을 꺼내올 수 있다.
index를 이용할 수 있도록 For문을 지정.
list의 사이즈만큼 반복하면서 값을 꺼내오게 할 수 있게 된다.

for (int i = 0; i < list.size(); i++) {
// 리스트에서 값을 꺼낼 때는 list.get()를 사용
// 여기에 index 값을 넣어주면 그러면 0번째 인덱스부터 시작해서 값을 가져올 것이다.
// String값이 들어가 있었고 String 값을 꺼내올 것이니깐
// get이라는 메소드를 사용해서 꺼내온 값을 String 변수 str이 받아준다.
String str = list.get(i);

// 그 값을 출력
System.out.println(str);

}

 

-- 전체코드

package java03.day04;

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

public class ListExam {

    public static void main(String[] args) {

        List<String> list = new ArrayList<>();

        list.add("KIM");
        list.add("HONG");
        list.add("KIM");

        System.out.println(list.size()); 

        for (int i = 0; i < list.size(); i++) {

            String str = list.get(i);

            System.out.println(str);

        }
    }
}

 

-- 출력결과

'JAVA > 복습' 카테고리의 다른 글

클래스  (0) 2021.10.22
Java - Map  (0) 2021.10.22
Java - Set 실습  (0) 2021.10.22
Java - Set  (0) 2021.10.22
String Method  (0) 2021.10.21