List: ArrayList, Vector

·2022년 11월 14일
0
  • ArrayList(순서O,중복O): 객체 배열 클래스. 가볍고 메모리를 적게 사용함

  • Vector: ArrayList와 기능이 거의 비슷함.

    ------>ArrayList와의 차이점
  1. Vector는 스레드의 동기화를 지원해서 멀티스레드 환경에서 안전하게 사용할 수 있음
  2. 그러나 많은 자원을 소모해서 무겁다.
  • ArrayList, Vector

  • 주요 메소드

    add(E e): 배열의 마지막에 객체의 요소를 추가(요소는 Object타입)
    get(int index): 인덱스 위치에 담긴 요소를 꺼내옴
    size(): 배열의 개수 리턴
    remove(int index): 해당 인덱스위치의 요소를 제거

ArrayList<String> al = new ArrayList<String>();
al.add("문자열1");
al.add("문자열2");
al.add("문자열3");
al.add("문자열3");
//
for(int i=0;i<al.size();i++){
	String a = al.get(i);
    System.out.print(a+" ");
}
Iterator<String> it = al.iterator();
while(it.hasNext()){
	String s = it.next();
    System.out.println(s+" ");
}

출력예시 : 문자열1 문자열2 문자열3 문자열3 문자열1 문자열2 문자열3 문자열3
->순서대로 출력되고 "문자열3"이 중복이지만 모두 출력된다.


  • 클래스 객체를 배열하고자 하는 경우

    -> 객체 예시: Member, 생성자 인자: String,int,
    -> 출력메소드 print(){System.out.print(String+int+" ");}
ArrayList<Member> am = new ArrayList<Member>();
am.add(new Member("문자열1",1));
am.add(new Member("문자열2",2));
am.add(new Member("문자열3",3));
am.add(new Member("문자열4",4));

Iterator<Member> it = am.iterator();
while(it.hasNext()){
	Member m = it.next();
    m.print();
}

출력예시 : 문자열1 1 문자열2 2 문자열3 3 문자열4 4


Vector

Vector<String> v = new Vector<String>();
v.add("문자열1");
v.add("문자열2");
v.add("문자열3");
v.add("문자열4");
//for문으로도 출력 가능
Iterator<String> it = v.iterator();
while(it.hasNext()){
	String s = it.next();
    System.out.print(s+" ");
}

출력: 문자열1 문자열2 문자열3 문자열4

profile
웹개발입문자

0개의 댓글