Java 컬렉션 프레임워크의 LinkedList-----LinkedList로 큐 및 스택 에뮬레이션

5359 단어
LinkedList의 고유한 방법:
(1) 추가 방법
addFisrt(E e): 이 목록의 시작 부분에 지정된 요소를 삽입합니다.//매개 변수 e는 Object 대상으로 이해할 수 있다. 목록은 모든 유형의 대상을 받아들일 수 있기 때문에 e는 Object 대상이다(전송 과정은 바로 상향 전환).
addLast(E e): 이 목록의 끝에 지정된 요소를 삽입합니다.
JDK1.6 이후:
offerFirst();
offerLast();//사실 앞뒤의 용법이 같아서 이름을 바꿨을 뿐이다.
(2): 원소를 얻는 방법(얻는 과정에서 체인 테이블 원소를 삭제하지 않음):
getFirst();이 목록의 첫 번째 요소를 되돌려줍니다.체인 테이블이 비어 있으면 NoSuchElementException 예외가 발생합니다.
getLast();이 목록의 마지막 요소를 되돌려줍니다.
JDK1.6 이후:
peekFirst();체인 테이블의 첫 번째 요소를 가져옵니다. 체인 테이블이 비어 있으면null로 되돌아옵니다.
peekLast();
(3): 원소를 가져오는 방법(가져오는 과정에서 체인 테이블 원소를 삭제):
removeFirst();체인 테이블의 첫 번째 요소를 가져오고 체인 테이블에서 삭제합니다. 체인 테이블이 비어 있으면 NoSuchElementException 이상을 던집니다.
removeLast();
JDK1.6 이후:
pollFirst();체인 테이블의 첫 번째 요소를 가져오고 체인 테이블에서 이 요소를 삭제합니다. 체인 테이블이 비어 있으면 null로 돌아갑니다.
pollLast();
구체적인 코드 구현:
 1 package collection;
 2 /*
 3  *  LinkedList 
 4  */
 5 import java.util.LinkedList;
 6 
 7 class Queue{// , ( )
 8     private LinkedList link;
 9     public Queue(){
10         link=new LinkedList();
11     }
12     public void myAdd(Object obj){
13         link.offerLast((obj));
14     }
15     public Object myGet(){
16         return link.pollFirst();
17     }
18     public boolean isNull(){
19         return link.isEmpty();
20     }
21 }
22 public class LinkedListTest {
23 
24     /**
25      * @param args
26      */
27     public static void main(String[] args) {
28 
29         Queue dl=new Queue();
30         dl.myAdd("abc0");
31         dl.myAdd("abc1");
32         dl.myAdd("abc2");
33         dl.myAdd("abc3");
34         while(!dl.isNull()){
35         System.out.println(dl.myGet());
36         }
37     }
38 
39 }

상기 코드를 요약하면 대외적으로 용기 대상을 제공하고 용기에 봉인하는 방법은 대기열 선진 선출(FIFO)의 수요를 실현할 수 있으며 그 중에서 봉인하는 방법을 조정하면 창고가 선진적인 후출이라는 데이터 구조(FILO)를 실현할 수 있다.

좋은 웹페이지 즐겨찾기