예제
import java.util.ArrayList;
public class Collection_FrameworkArrayList02 {
public static void main(String[] args) {
//[0] : ArrayList 객체생성 -> 제네릭을 사용
ArrayList<String> ar = new ArrayList<String>();
//[1] : 추가 -> add()
System.out.println("--- ar.get(2) 출력 ---");
ar.add("홍길동");
ar.add("이순신");
ar.add("육룡이");
ar.add("을지문덕");
ar.add("김유신");
System.out.println(ar.get(2)); //육룡이
String str = ar.get(0); //형변환 없이 바로 사용 -> 타입 안정성
//[2] : 수정 -> set(인덱스, 수정값)
System.out.printf("%n--- Index value 수정 ---%n");
ar.set(2, "나르샤"); // 육룡이 -> 나르샤
System.out.println(ar.get(2));
//[3] : 삭제 -> 2가지 (단일 삭제, 모두 삭제) -> remove(index)
System.out.printf("%n---Index value 단일 삭제 ---%n");
ar.remove(2); // ar.get(2) : 나르샤 -> ar.get(2) : 을지문덕
System.out.println(ar.get(2));
//[4] : 출력 -> 향상된 for문
for(String str1 : ar) {
System.out.println(str1 + "");
}
System.out.println();
//[5] : 출력 2
for(int i = 0; i < ar.size(); i++) {
System.out.printf("%d번의 학생의 이름은 %s 입니다. %n", (i + 1), ar.get(i));
}
//[6] : 모두 삭제 -> removeAll(배열명)
System.out.printf("%n--- 모두 삭제 ---%n");
ar.removeAll(ar);
System.out.println("현재 데이터 index가 '" + ar.size() + "' 이므로");
if(ar.size() == 0) {
System.out.println("현재 데이터가 존재하지 않습니다.");
}else {
System.out.println("현재 데이터가 존재합니다.");
}
}
}
1. ArrayList 객체 생성과 추가
제네릭을 사용하여 "ArrayList<String>" 을 선언하고 생성한다. 여기서 제네릭 "<String>" 은 ArrayList에 저장될 데이터 타입을 String으로 지정하였음을 의미한다.
ArrayList<String> ar = new ArrayList<String>();
이후 "add()" 메서드를 사용하여 문자열 데이터를 추가한다. 추가된 데이터는 인덱스을 통해 참조될 수 있다.
ar.add("홍길동");
ar.add("이순신");
ar.add("육룡이");
ar.add("을지문덕");
ar.add("김유신");
2. 데이터 수정 : Set() 메서드
ArrayList에서 데이터를 수정하는 방법은 "set()" 메서드를 사용한다. 이 메서드는 첫 번째 인자로 인덱스를, 두번 째 인자로 변경할 값을 받아 해당 인덱스의 값을 변경한다.
ar.set(2, "나르샤");
이 경우, 인덱스 2의 값 "육룡이" 이 "나르샤"로 변경된다.
3. 데이터 삭제 : remove() 메서드
ArrayList에서 데이터를 삭제하는 방법은 "remove()" 메서드를 사용한다. 이 메서드는 인자로 인덱스를 받아 해당 인덱스의 값을 삭제한다.
ar.remove(2);
이 경우, 인덱스 2의 값 "나르샤"가 삭제된다. 삭제 후에는 인덱스가 다시 조정되므로, 인덱스 2는 이전 인덱스 3의 값 "을지문덕"을 가리킨다.
4. 모든데이터 삭제 : removeAll() 메서드
"removeAll()" 메서드는 특정 컬렉션에 있는 모든 요소를 ArrayList에서 삭제한다. 여기서는 "ar.removeAll(ar);" 코드로 ArrayList에 있는 모든 요소를 삭제하였다.
'Java > JAVA 100 문제 풀이' 카테고리의 다른 글
자바 part.5 문제풀이 - Iterator 이해와 활용 방법 (0) | 2023.08.01 |
---|---|
자바 part.5 문제풀이 - ArrayList를 활용한 2차원 배열 데이터 처리 (0) | 2023.08.01 |
자바 part.5 문제풀이 - ArrayList : 동적 데이터 구조의 이해와 활용 (0) | 2023.08.01 |
자바 part.5 문제풀이 - 컬렉션 프레임워크란 무엇인가? (0) | 2023.08.01 |
자바 part.5 문제풀이 - 제네릭(Generic) 개념 활용 (0) | 2023.08.01 |