집합 조작 (2)

1. Array List, Vector, LinkedList 집합 작업 과 차이
A: ArrayList
* 특징: 바 텀 데이터 구 조 는 배열 로 조회 가 빠 르 고 삭제 가 느 리 며 스 레 드 가 안전 하지 않 고 효율 이 높다.
B: Vector
* 특징: 바 텀 데이터 구 조 는 배열 로 조회 가 빠 르 고 삭제 가 느 리 며 스 레 드 가 안전 하고 효율 이 낮 습 니 다.
* public void addElement (E obj) 요소 추가
* public E element At (int index) 색인 에 따라 요 소 를 가 져 옵 니 다.
* public Enumeration elements () 는 교체 기 와 유사 한 것 을 사용 하여 집합 을 옮 겨 다 닐 수 있 습 니 다.
C: LinkedList
* 특징: 바 텀 데이터 구 조 는 링크 로 조회 가 느 리 고 삭제 가 빠 르 며 스 레 드 가 안전 하지 않 고 효율 이 높다.
* public void addFirst (E e) 첫 번 째 위치 에 요소 추가
* public void addLast (E e) 마지막 위치 에 요소 추가
* public E getFirst () 첫 번 째 위치의 요 소 를 가 져 옵 니 다.
* public E getLast () 마지막 위치의 요소 가 져 오기
* public E removeFirst () 첫 번 째 위치의 요소 삭제
* public E removeLast () 마지막 위치의 요소 삭제
2. Array List 집합 작업
import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;

/*
     ,         ArrayList  ,       
a)       
b)         
c)  size() get()    
d)    for  
 */
public class ArrayListTest {
	public static void main(String[] args) {
		//        
		Student s1 = new Student("  ",21);
		Student s2 = new Student("   ",25);
		Student s3 = new Student("  ",22);
		//  ArrayList   arr  
		ArrayList<Student> arr = new ArrayList<Student>();
		//          arr   
		arr.add(s1);
		arr.add(s2);
		arr.add(s3);
		//1.           
		for(Iterator<Student> it = arr.iterator();it.hasNext();){
			//               
			Student ss = it.next();
			System.out.println(ss.getName()+"-----"+ss.getAge());
		}
		//2           
		System.out.println("--------------------------------------");
		for(ListIterator<Student> it = arr.listIterator();it.hasNext();){
			Student ss2 = it.next();
			System.out.println(ss2.getName()+"--------"+ss2.getAge());
		}
		
		//3.  get() size()      
		System.out.println("---------------------------------------");
		for(int i=0;i<arr.size();i++){
			Student ss3 = (Student)arr.get(i);
			System.out.println(ss3.getName()+"------"+ss3.getAge());
		}
		//4.    for    
		System.out.println("---------------------------------------");
		for(Student ss4 : arr){
			System.out.println(ss4.getName()+"---"+ss4.getAge());
		}
	}
	
}

/*
   -----21
   -----25
  -----22
--------------------------------------
  --------21
   --------25
  --------22
---------------------------------------
  ------21
   ------25
  ------22
---------------------------------------
  ---21
   ---25
  ---22

 */

3. 벡터 집합 작업
import java.util.Enumeration;
import java.util.Iterator;
import java.util.Vector;

/*
      ,         Vector  ,       
a)       
b)  Vector        
c)   size() get()    
d)     for  
 */

public class VectorDemo {
	public static void main(String[] args) {
		//    Student   
		Student s1 = new Student("  ",21);
		Student s2 = new Student("   ",25);
		Student s3 = new Student("  ",22);
		//  Vector    
		Vector<Student> ve = new Vector<Student>();
		// Student       ve     
		ve.addElement(s3);
		ve.addElement(s2);
		ve.addElement(s1);
		//1.         
		for(Iterator<Student> it = ve.iterator();it.hasNext();){
			Student ss = it.next();
			System.out.println(ss.getName()+"----"+ss.getAge());
		}
		//2.  Vector          
		System.out.println("-----------------------------------");
		for(Enumeration<Student> el = ve.elements();el.hasMoreElements();){
			Student ss2 = el.nextElement();
			System.out.println(ss2.getName()+"----"+ss2.getAge());
		}
		//3.  get() set()      
		System.out.println("-----------------------------------");
		for(int i=0;i<ve.size();i++){
			Student ss2 = ve.get(i);
			System.out.println(ss2.getName()+"----"+ss2.getAge());
		}
		//4.    for  
		System.out.println("-------------------------------------");
		for(Student ss4:ve){
			System.out.println(ss4.getName()+"----"+ss4.getAge());
		}
	}
}

/*
   ----22
   ----25
  ----21
-----------------------------------
  ----22
   ----25
  ----21
-----------------------------------
  ----22
   ----25
  ----21
-------------------------------------
  ----22
   ----25
  ----21

 */

4. LinkedList 집합 작업
import java.util.Iterator;
import java.util.LinkedList;
import java.util.ListIterator;

/*
     ,         LinkedList  ,       
a)       
b)         
c)  size() get()    
d)    for  
 */
public class LinkedListDemo {
	public static void main(String[] args) {
		//        
		Student s1 = new Student("  ",21);
		Student s2 = new Student("   ",25);
		Student s3 = new Student("  ",22);
		//  LinkedList    li
		LinkedList<Student> li = new LinkedList<Student>();
		//         li
		li.add(s3);
		li.add(s2);
		li.add(s1);
		//1.         
		for(Iterator<Student> it= li.iterator();it.hasNext();){
			Student ss = it.next();
			System.out.println(ss.getName()+"-----"+ss.getAge());
		}
		//2.         
		System.out.println("------------------------------------");
		for(ListIterator<Student> it = li.listIterator();it.hasNext();){
			Student ss2 = it.next();
			System.out.println(ss2.getName()+"----"+ss2.getAge());
		}
		//3.  size() get()    
		System.out.println("-------------------------------------");
		for(int i=0;i<li.size();i++){
			Student ss3 = li.get(i);
			System.out.println(ss3.getName()+"-----"+ss3.getAge());
		}
		//4.    for  
		System.out.println("----------------------------------------");
		for(Student ss4 : li){
			System.out.println(ss4.getName()+"----"+ss4.getAge());
		}
	}
}
/*
 *  -----22
   -----25
  -----21
------------------------------------
  ----22
   ----25
  ----21
-------------------------------------
  -----22
   -----25
  -----21
----------------------------------------
  ----22
   ----25
  ----21

 */

5. LinkedList 를 사용 하여 스 택 의 데이터 구 조 를 모 의 합 니 다.
(1)MyLinkedList.java
import java.util.LinkedList;

public class MyLinkedList {
	private LinkedList linkedList;
	public MyLinkedList(){
		linkedList = new LinkedList();
	}
	//      ,                  
	public void add(Object obj){
		linkedList.addFirst(obj);
	}
	//      ,removeFirst()              
	public Object get(){
		return linkedList.removeFirst();
	}
	public boolean isEmpty(){
		return linkedList.isEmpty();
	}
	@Override
	public String toString() {
		return "MyLinkedList [linkedList=" + linkedList + "]";
	}
	
}

(2)MylinkedListShow.java
public class MylinkedListShow {
	public static void main(String[] args) {
		MyLinkedList linkedList = new MyLinkedList();
		//    
		linkedList.add("   ");
		linkedList.add(".");
		linkedList.add("    ");
		//        
		while(!linkedList.isEmpty()){
			System.out.print(linkedList.get());
		}
		System.out.println();
	}
}

좋은 웹페이지 즐겨찾기