JavaFX에서 ArrayList를 ObservableList로 변환

MD Aminul Islam 2023년10월12일
JavaFX에서 ArrayList를 ObservableList로 변환

때때로 우리는 우리 프로그램의 목록으로 작업합니다. 목록은 배열 유형입니다.

작업할 수 있는 목록에는 두 가지 유형이 있습니다. 첫 번째는 ArrayList이고 두 번째는 ObservableList입니다.

ArrayList는 ObservableList를 통해 프로그램이 발생하는 변경 사항을 수신하고 추적할 수 있는 크기 조정 가능한 배열 클래스입니다. 때때로 우리는 다양한 목적을 위해 ArrayList를 ObservableList로 변환해야 합니다.

이 기사에서는 ArrayList를 ObservableList로 변환하는 방법을 설명합니다. 또한 이해를 돕기 위해 출력과 함께 예제를 볼 것입니다.

JavaFX에서 ArrayList를 ObservableList로 변환

따라서 이 예에서는 ArrayList를 Observable 목록으로 변환합니다. 프로그램에서 사용할 구성 요소에 필요한 패키지 파일을 포함하는 것으로 시작합니다.

예제 코드는 다음과 같습니다.

// Importing necessary packages
import java.util.ArrayList; // Package for the ArrayList
import java.util.List; // Package for the list
import javafx.collections.FXCollections; // Package for FxCollections
import javafx.collections.ListChangeListener; // Package for the listener for lists
import javafx.collections.ObservableList; // Package for the ObservableList

public class observableList {
  // Our main method
  public static void main(String[] args) {
    List list = new ArrayList(); // create an array list of integer type
    ObservableList ObList =
        FXCollections.observableList(list); // create an observable list from array

    ObList.addListener(new ListChangeListener() { // add an event listerer for the observable list
      @Override
      public void onChanged(
          ListChangeListener.Change c) { // Method that will execute when any changes occured
        System.out.println("Changes found ...  "); // Show a message that a change occured
      }
    });
    // add items to the observable List and check for size.
    ObList.add(22);
    System.out.println("The ObservableList size is:  " + ObList.size());
    list.add(44);
    System.out.println("The ObservableList size is:  " + ObList.size());
    ObList.add(66);
    System.out.println("The ObservableList size is:  " + ObList.size());
  }
}

각 행의 목적이 명령됩니다. 이제 ArrayList list를 ObservableList ObList로 변환하는 단계에 대해 이야기하겠습니다.

이 두 목록의 데이터 유형은 정수입니다. 먼저 list라는 정수 유형 ArrayList를 만들었습니다.

그 후, 어레이 목록 list를 사용하여 ObservableList 이름 ObList를 만들었습니다. ObList에 대한 변경 사항을 감지하는 아래 이벤트 리스너를 만들었습니다.

조치로 ObList에서 변경 사항이 발견되었음을 사용자에게 알리기 위해 콘솔에 Changes found...라는 메시지가 표시되었습니다.

public void onChanged(ListChangeListener.Change c) {
  System.out.println("Changes found . .  ");
}

이것은 ListChangeListener.Change가 있는 목록 변경 수신기입니다. 필요에 따라 원하는 작업을 추가할 수 있습니다.

마지막으로 시스템이 작동하는지 확인하기 위해 어레이에 일부 데이터를 제공했습니다. 성공적으로 컴파일하고 실행하면 다음과 같은 출력이 표시됩니다.

출력:

Changes found...
The ObservableList size is: 1
The ObservableList size is: 2
Changes found...
The ObservableList size is: 3

IDE가 라이브러리의 자동 포함을 지원하지 않는 경우 기억하십시오. 그런 다음 컴파일하기 전에 필요한 라이브러리 파일을 수동으로 포함해야 할 수도 있습니다. 그렇지 않으면 오류가 표시됩니다.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn

관련 문장 - Java JavaFX