박서희연구소

[Java] List 본문

○ Programming [Basic]/Java

[Java] List

SEOHUI PARK 2022. 12. 26. 16:59
반응형

1. List 란?

List  정렬된(순서가 있는) 컬렉션을 관리하는 기능을 제공하는 interface 이다.

java.util 패키지에 포함되며, Collection interface 를 상속 및 ListIterator interface 의 factory 이다.

ListIterator 를 통해 목록을 정방향 및 역방향으로 반복할 수 있다.

implementation 클래스로는 ArrayList, LinkedList, Stack 이 존재한다.

 

2. 특징

  • element(요소) 를 삽입, 수정, 삭제, 검색 하는 index 기반의 메서드가 포함
  • 중복 element 삽입 가능(중복을 허용)
  • null element 저장 가능

3. 내가 활용해 본 List

public void listExample() {
    // Create ArrayList of String Type
    List<String> colorList = new ArrayList<String>();
    
    // Add element to List
    colorList.add("Red");
    colorList.add("Blue");
    colorList.add("Black");
    
    // Change the value of the second element of the list
    colorList.set(1, "Green");
    
    // Sort List
    Collections.sort(colorList);
    for (String color: colorList) System.out.println(color);
    
    // Creating an Array of Integer Types
    Integer[] numberArray = {4, 22, 17};
    
    // Creating an Integer type ArrayList
    List<Integer> numberList = new ArrayList<Integer>();
    
    // Traversing the values of an array into an ArrayList
    for (Integer number: numberArray) numberList.add(number);
    
    // Sort List
    Collections.sort(numberList);
    System.out.println(numberList);
    
    // Convert ArrayList to Array
    String[] colorArray = colorList.toArray(new String[colorList.size()]);
    System.out.println(Arrays.toString(colorArray));
    System.out.println(colorList);
    
    // ListIterator declaration
    ListIterator<String> itr = colorList.listIterator();
    
    // Traverse in the forward direction
    while (itr.hasNext()) System.out.println("index : " + itr.nextIndex() + " value : " + itr.next());
    
    // Traverse in the reverse direction
    while (itr.hasPrevious()) System.out.println("index : " + itr.previousIndex() + " value : " + itr.previous());
}

결과

- 끝 -

반응형

'○ Programming [Basic] > Java' 카테고리의 다른 글

[Java] Stream  (0) 2022.09.06
[Java] Optional  (0) 2022.09.05
[Java] Lambda Expression  (0) 2022.09.05
[Java] EnumSet  (0) 2022.09.02
[Java] 객체 지향 프로그래밍[OOP(Object-Oriented Programming)] 이란?  (0) 2020.09.16
Comments