ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자바 step12 - UtilClass(ArrayList 객체)
    Java 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문을 돌려 하나씩 빼서 출력해주어야 된다.

     

     

    댓글

Designed by Tistory.