study 교재/*초간단 자바

PART11.배열보다 유용한 컬렉션/LESSON 02.List에 데이터 추가/제거하기

뚱토93 2023. 4. 17. 11:11
  • List를 사용하면 아주 쉽게 목록에서 데이터를 추가하거나 제거할 수 있다.먼저 문자열 목록에 데이터를 추가하는 예제코드를 알아보자.

그림11.5-ArrayList에 데이터 추가 예시

1.foods라는 이름의 문자열 타입 ArrayList변수를 생성한다.

2.List에 미리 준비된 add메소드를 호출해 문자열 데이터들을 추가한다.

3.데이터가 잘 추가되었는지 확인하기 위해 foods를 출력한다.

 

  • List에는 미리 준비된 add라는 메소드가 존재한다.이 메소드를 호출하면서 매개변수로 목록에서 사용하는 타입의 데이터를 입력하면 목록에 데이터가 추가된다.
  • add 메소드를 사용해서 추가했던 "치킨"과 "피자"라는 문자열이 대괄호 안에 쉼표로 구분되어 출력되었다. 많은 프로그래밍 언어에서 대괄호는 목록 형태의 자료를 나타내기 위해 사용하는 기호이다.
  • 정수,실수,논리형 데이터의 목록을 만든다면 지금까지 사용했던 int,double,boolean을 사용할 수 없다.List에서는 원시 자료형을 사용할 수 없기 때문이다.때문에 각각 다음과 같이 레퍼 타입으로 대체해서 사용해야 한다.

 

 

int -> Integer : ArrayList<Integer>로 사용

double -> Double : ArrayList<Double>로 사용

boolean -> Boolean : ArrayList<Boolean>으로 사용

 

 

 

->이어서 데이터를 제거하는 방법을 살펴 볼 예정이다. List에서 특정 데이터를 제거하는 방법은 크게 2가지가 있다.

1.데이터를 지정하는 방법

2.데이터의 위치를 지정하는 방법

 

 

그림11.7-List에서 데이터 제거 예시

  • List에 미리 준비된 remove 메소드를 이용해 "치킨"이라는 문자열을 제거하였다.

그림11.8-ArrayList에 데이터 제거 예시 2

  • remove 메소드를 사용해 데이터를 제거하는데 이번에는 0을 입력해 0번째 데이터인 "치킨"을 제거하였다.

->예제를 통해 확인 했듯이 List에는 remove 메소드가 두개 준비되어 있다.하나는 값을 직접 입력하는 것이고,다른 하나는 인덱스를 입력하는 것이다.

 

 

 

 

그림11.10-목록에서 인덱스를 잘못 지정했을 때 오류가 발생하는 프로그램

  • 주의: 인덱스를 사용시에는 인덱스가 0번부터 시작한다는 것을 명심하기 (사진과 같이 프로그램 실행 도중 오류가 발생한다)
  • remove 메소드를 호출하면서 매개변수로 2를 입력했다.실제 목록에는 0번과 1번째밖에 존재하지 않는다.