Categories: Java 언어Korean

Java 총 정리[81. List]

List

이전 걸음에서 제네릭과 자료구조에 대해서 공부를 했습니다.  Java에 모든 자료구조는 제네릭을 사용해서 자료를 관리를 하고 있습니다. 이번 걸음에서는 자료구조를 자세하게 같이 공부를 해보도록 하겠습니다. 

List에 대해서 이번 걸음에서 자세히 공부를 해보도록 하겠습니다. Java의 자료구조 뿐만 아니라 자료를 관리 하기 위한 프로그래밍 언어들에서 가장 많이 사용이 되는 것이 List 자료 구조 입니다. 그만큼 중요 하기 때문에 이번 걸음에서 같이 공부를 해보도록 하겠습니다.

이번 걸음에서는 List란? 무엇인지 공부를 하고 List에서 많이 사용을 하는 Method에 대해서 공부를 하며 마지막으로는 List를 활용한 예제 소스를 작성을 하여 어떻게 사용을 하면 되는지 마지막으로 점검을 하도록 하겠습니다. 이번 걸음을 통해서 자료구조 List를 좀 더 확실하게 알 수 있는 시간이 될 수 있습니다.

List 란?

List의 특징은 순서가 있습니다. 그래서 index 개념으로 접근을 해서 데이터를 적재하거나 활용을 할 수 있습니다. index로 데이터를 관리 하기 때문에 그 안에 들어가는 데이터는 중복을 하여도 상관이 없습니다. 

List와 관련된 인터페이스는 이전 자료구조에서 설명을 했던 Collection과 List입니다. 

List관련 class는 ArrayList, LinkedList, Stack이 있습니다.

List에 사용되는 Method

Add(객체) : 추가

Add(index,객체) : index에 추가

addAll(index, Collection) : index 지정위체 Collection 추가

Get(index) : index의 객체 주는 것

indexOf(객체) : index 위치를 반환

lastIndexOf(객체) : 그 객의 제일 마지막에 있는 index를 반환

Remove(index) : index 위치의 객체를 삭제

Set(index, 객체) : index 위치의 객체 교체

Size() : 리스트에 길이

subList(from, to) : from~to까지의 객체를 List로 반환

※ 위 Method 이외에도 더 많은 Method가 있습니다. 많이 쓰는 Method를 설명을 드렸습니다.

List 예제 소스

    
public static void main(String[] args) {
 String[] name = {"ha","ho","la","bac","def"};
 ArrayList lname = new ArrayList(Arrays.asList(name));
 System.out.println("초기 값 : " + lname);
 lname.add("xx");
 System.out.println("\"xx\" 추가된 후의 값 : "+lname);
 lname.set(0, "박");
 lname.set(3, "상");
 System.out.println("\"박\"으로 변경되고 \"상\"이 추가된 값 : "+lname);
 Collections.shuffle(lname);
 System.out.println("shuffle()적용된 값 : " + lname);
 Collections.sort(lname);
 System.out.println("sort() 메소드가 적용된 값 : " + lname);
 System.out.println("5번째 요소의 값 : "+lname.get(4));
 Collections.fill(lname, "교");
 System.out.println("모든 요소를 \"교\"으로 설정된 값 : "+lname );
}
    
Dolphin

Recent Posts

Java 총정리[97. Java GUI]

Java GUI Java GUI에 대해서 이번 걸음에서 배움으로써 GUI에 전반적인 지식과 Java GUI를 구현하는 방법…

4개월 ago

Java 총정리[96. Java TCP 통신 프로그램 구현]

Java TCP 통신 프로그램 구현 Java TCP 통신 프로그램 구현을 위해서 이전 걸음에서 쓰레드에 대한…

5개월 ago

Java 총정리[95.쓰레드 통신]

쓰레드 통신 이전 걸음에서 쓰레드의 임계영역에 대해서 같이 공부를 했습니다. 동기화에 대한 개념을 계속적으로 하고…

5개월 ago

Java 총 정리[94. 쓰레드 임계영역]

쓰레드 임계영역 이전 걸음에서 쓰레드의 동기화에 대해서 같이 공부를 했습니다. 동기화에 대한 전반적인 내용을 공부하고…

6개월 ago

Java 총 정리[93. 쓰레드 동기화]

쓰레드 동기화 이전 걸음에서 계속 쓰레드에 대해서 공부를 하고 있습니다. 쓰레드는 상당히 중요한 개념이기 때문에…

6개월 ago

Java 총 정리[92. 쓰레드 join()]

쓰레드 join() 이전 걸음에서 쓰레드의 전반적인 실행 흐름에 대해서 공부를 했습니다. 이제 배운 실행 흐름…

6개월 ago

This website uses cookies.