Collection _ArrayList

Posted 2015. 4. 10. 15:50

package chap11;
//collection -> java.util
import java.util.*;

// Collection jdk 1.2에서 추가된 내용
// 컴파일에서 추가되는 객체의 자료형을 표시하기 위한 방법이 추가됨( jdk 5.0 )-> 제네릭 표현

// List : 순서가 유지 ( add 순서 )

// ArrayList, Vector
// ArrayList의 멤버메서드는 스레드에 동기화 되어있지 않다.
// Vector의 멤버메서드는 스레드에 동기화 되어있다.

// ArrayList 예제

public class ArrayListEx1 {
 public static void main(String[] args) {
  List<Integer> list1 = new ArrayList<Integer>();
  // 1 : 자동으로 Integer 객체로 형변환 5.0이후만 가능. Boxing
  list1.add(1); // list1.add( new Integer(1) );
  list1.add(2);
  list1.add(5);
  list1.add(4);
  list1.add(0);
  list1.add(3);
  
  ArrayList<Object> list2 = new ArrayList<Object>( list1.subList(1, 4) ); // index 1번부터 4번전까지.
  print( list1, list2 );
  // Collections 클래스
  // Collection  인터페이스
  Collections.sort(list1);
//  Collections.sort(list2); // Object일 경우 관련메서드 compareTo()
  print( list1, list2 );
  // list1 안에 list2 전부 포함되니 ?
  System.out.println(list1.containsAll(list2));
  
  list2.add("B");
  list2.add("C");
  print( list1, list2 );
  // index 3번째에 A를 넣는다, 아무것도 없다면 맨 앞에 들어간다.
  list2.add(3,"A");
  print( list1, list2 );
  // 기존내용을 변경
  list2.set( 3,  "AA");
  print( list1, list2 );
  
  //개선된 for문으로 사용 가능
  for( Object o : list1 ){
   System.out.println(o);
  }
  System.out.println();
 }

 private static void print(List list1, ArrayList list2) {
  // TODO Auto-generated method stub
  System.out.println("list1 :" + list1);
  System.out.println("list1 :" + list2);
  System.out.println();
 }
}

 

'Java !!!' 카테고리의 다른 글

enum  (0) 2015.04.10
Collection_EX  (0) 2015.04.10
Collection _Iterator  (0) 2015.04.10
Collection_ HastSet  (0) 2015.04.10
Collection_ TreeSet  (0) 2015.04.10