반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Linux세팅
- include액션태그
- 리눅스세팅
- Daemon()
- first-of-child
- ID중복
- StringReader
- include 지시자
- 상관서브쿼리
- 메모리스트림
- 동기화
- MemoryStream
- 아이디중복
- ThreadGroup()
- 표현 언어
- StringWriter
- 리눅스셋팅
- first-child
- interrupt()
- ObjectInputStream
- include지시자
- Linux셋팅
- isinterrupted()
- InputDialog
- char[] String 형변환
- 스레드그룸
- 상관 서브 쿼리
- interrupted()
- String char[] 형변환
- sleep()메소드
Archives
- Today
- Total
다연이네
[days22] 컬렉션 클래스<List> - LinkedList 본문
반응형
LinkedList 컬렉션 클래스
- 연결구조 노드-노드-노드 구조
- 불연속적으로 존재하는 데이터를 서로 연결(Link)한 형태
- Queue 구조를 따른다(FIFO), Deque(Queue의 자식) 구조를 상속받고 있음
- 삭제, 추가 간단+ 처리 속도 빠름 ***
- ***중간 데이터***를 추가/삭제할 경우 성능이 빠르다
package review;
import java.util.Iterator;
import java.util.LinkedList;
public class Ex03 {
public static void main(String[] args) {
Node node1 = new Node(10);
Node node2 = new Node(20);
Node node3 = new Node(30);
Node node4 = new Node(40);
Node node5 = new Node(50);
node1.next = node2; //// 노드2의 주소값을 노드1에 참조시킨 것
node2.next = node3;
node3.next = node4;
node4.next = node5;
node1.next = node3; //node2 제거
Node node6 = new Node(60); //node6 추가
node5.next = node6;
//모든 노드 값 출력
Node node = node1;
while (node != null) {
System.out.println(node.value);
node = node.next;
}
//단점: 중간에 주소값 잘못 입력하면 뒤에 기차들 다 날아감
//해결 > 양방향 링크드 리스트
Node next = null; // 다음 요소(노드) 주소값
Node previous = null; // 앞(이전) 요소
LinkedList<String> list = new LinkedList<>();
list.add("신짱구");
list.add("신짱아");
list.addFirst("김철수");//맨 앞에 삽입
list.offer("맹구"); //offer == add
//list 전체 출력
Iterator<String> ir = list.iterator();
while (ir.hasNext()) {
String name = ir.next();
System.out.println(name);
}
System.out.println(list.get(0));
System.out.println(list.getFirst()); // == list.get(0)
System.out.println(list.peek()); // == list.get(0)
System.out.println(list.poll()); // == list.get(0) + 제거
//list.remove(0); 첫 값 제거
//list.removeFirst(); "
//list.poll(); "
}
}
class Node{
int value;
public Node(int value) {
super();
this.value = value;
}
Node next = null;// 자기 자신의 주소 값을 참조함 ( 다음 요소(노드)의 주소값을 담을 참조변수 )
}
반응형
'Java' 카테고리의 다른 글
[days22] 컬렉션 클래스<Set> - HashSet (0) | 2020.10.21 |
---|---|
[days22] 컬렉션 클래스<List> - Stack과 Queue (0) | 2020.10.21 |
[days22] 컬렉션 클래스<List> - ArrayList와 Vector +열거자와 반복자 (0) | 2020.10.21 |
[days21] 컬렉션 프레임워크 (0) | 2020.10.19 |
[days21] JDK 1.8 java.time (0) | 2020.10.19 |
Comments