반응형

이전에 배웠던 배열의 확장판이 바로 List와 Arraylist가 있는데요.

이는 자료형 데이터로써 Java로 프로그래밍을 하면서 Map과 함께 가장 많이 쓰이는 기능입니다.

List, Arraylist 특징

  1. Java.Util 클래스에서 제공하며 많은 데이터를 배열, 즉 그룹과 같은 형태로 저장하는 기능을 제공합니다.
  2. 선언 후 add를 통해 값을 저장하면 순차적으로 값이 저장됨.
  3. 제네릭( <> ) 기능을 활용하면 List에 저장되는 데이터 타입 지정이 가능.
  4. 배열보다 활용할 수 있는 기능이 많아 더 많이 활용됨.
  5. ArrayList, LinkedList, Vector와 같은 클래스를 구현 가능.

사용법

  1. 선언 : List [변수명] = new ArrayList();
    위와 같이 선언이 가능하며 제네릭은 사용하지 않으면 모든 데이터를 저장할 수 있음.
    List<String> [변수명 ] = new ArrayList<String>();
    제네릭을 활용할 경우 해당되는 타입의 값만 저장 가능

  2. 저장 : add(값) 
    위의 선언 변수명.add(값)을 하게 되면 해당 List에 값이 저장됨.
    저장된 값을 순차적으로 저장되며 이는 Index화 됨.

  3. 읽기 : get(숫자)
    변수명.get(0) 을 하게 되면 0에 해당하는 index위치의 list 값을 출력.
  4. 삭제 : remove(숫자)
    변수명.remove(0) 을 하게 되면 0에 해당하는 index위치의 list 값을 삭제.

샘플 소스

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

public class Exm {
	public static void main(String[] args)  {

		List<String> listExm = new ArrayList<String>(); //list 선언
		
		listExm.add("값1");//저장
		listExm.add("값2");
		listExm.add("값3");
		
		System.out.println(listExm.size()); //값이 저장된 갯수
		
		for(int i=0; i<listExm.size(); i++) {
			System.out.println(i+"번방 : "+listExm.get(i)); //값을 출력
		}
		
		listExm.remove(1); //1번방 값을 삭제
		
		System.out.println("ㅡㅡ삭제 후 다시 출력ㅡㅡ");
		System.out.println(listExm.size()); //값이 저장된 갯수
		
		for(int i=0; i<listExm.size(); i++) {
			System.out.println(i+"번방 : "+listExm.get(i)); //값을 출력
		}
		
	}
}

위와 같이 샘플 소스를 구동한 모습입니다.

.size를 하게 되면 list에 저장된 값의 개수를 알 수 있고 

이를 for문과 결합하여 사용하면 순차대로 값을 출력할 수 있습니다.

 

위와 예제는 제네릭 부분에 String을 활용하였지만

Vo, DTO 같은 클래스를 활용하면 더 많은 데이터를 저장하고 관리할 수 있습니다.

반응형

+ Recent posts