Java

자바 step12 - UtilClass(ArrayList 객체)

코딩탕탕 2022. 11. 7. 18:39

 

java 에서 배열은 크기를 조절할수 없는 고정 배열이다.
따라서 동적으로 item 을 추가하고 삭제하고 하는 작업을 하려면 일반배열은 사용할수 없다.
그래서 해당 작업을 하려면 ArrayList 객체를 사용하면 된다. 

package test.main;

import java.util.ArrayList;

/*
 *  java 에서 배열은 크기를 조절할수 없는 고정 배열이다.
 *  
 *  따라서 동적으로 item 을 추가하고 삭제하고 하는 작업을 하려면 일반배열은 사용할수 없다.
 *  
 *  그래서 해당 작업을 하려면 ArrayList 객체를 사용하면 된다. 
 */
public class MainClass01 {
	public static void main(String[] args) {
		// String type 을 저장할수 있는 ArrayList 객체생성 
		ArrayList<String> names=new ArrayList<String>();
		// "김구라" , "해골", "원숭이"  3개의 String type 을 저장해 보세요.
		names.add("김구라");
		names.add("해골");
		names.add("원숭이");
		
		//0 번방의 아이템을 불러와서 item 이라는 변수에 담아보세요
		String item=names.get(0);
		
		//1 번방의 아이템을 삭제 하려면?
		names.remove(1);
		
		//0 번방에  "에이콘" 을 넣고 싶으면?
		names.set(0, "에이콘");
		
		//저장된 아이템의 갯수(size) 를 size 라는 지역 변수에 담아 보세요.
		int size=names.size();
		
		System.out.println(names + " " + size);
		
		//저장된 모든 아이템 전체 삭제
		names.clear();
	}
}

<console>
[에이콘, 원숭이] 2

ArrayList<Strintg> <> 안에 String type을 선언하였으므로 안에 저장되는 type은 String type만 가능하다.

앞서 배운 제네릭(Generic) class 를 사용한 것이다.

add() 메소드로 특정 문자열을 저장한 뒤에 그것을 호출할 수 있다.

또한 배열이므로 숫서가 존재하기 때문에 인덱싱을 사용해 삭제, 추가도 가능하다.

 

 

응용 문제 1)

ArrayList 객체에 친구 이름 5 개를 담고 반복문 돌면서 친구 이름을 다음과 같은 형식으로 출력해보세요.
    *  0 번째 친구 : 김구라
    *  1 번째 친구 : 해골
    *  2 번째 친구 : 원숭이

package test.main;

import java.util.ArrayList;

public class MainClass02 {
	public static void main(String[] args) {
		/*
		 *  ArrayList 객체에
		 *  
		 *  친구 이름 5 개를 담고
		 *  
		 *  반복문 돌면서 친구 이름을 다음과 같은 형식으로 출력해보세요.
		 *  
		 *  0 번째 친구 : 김구라
		 *  1 번째 친구 : 해골
		 *  2 번째 친구 : 원숭이
		 */
		ArrayList<String> names=new ArrayList<String>();
		names.add("김구라");
		names.add("해골");
		names.add("원숭이");
		names.add("주뎅이");
		names.add("덩어리");
		
		System.out.println(names);
		
		// names 의 size 만큼 반복문 돌면서
		for(int i=0; i<names.size(); i++) {
			// i 번째 방에 저장된 친구 이름 참조
			String tmp=names.get(i);
			System.out.println(i + " 번째 친구 : "+tmp);
		}
	}
}

<console>
[김구라, 해골, 원숭이, 주뎅이, 덩어리]

0 번째 친구 : 김구라
1 번째 친구 : 해골
2 번째 친구 : 원숭이
3 번째 친구 : 주뎅이
4 번째 친구 : 덩어리

ArrayList 객체를 String type으로 생성하여 그 안에 문자열을 저장했다. 단순히 저장한 뒤에 콘솔창에 호출하면 List 형식으로 나오게 되는데 위와 같은 문제를 풀려면 for문을 돌려 하나씩 빼서 출력해주어야 된다.