English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 튜토리얼

Java 프로세스 제어

Java 배열

Java 객관적 객체(I)

Java 객관적 객체(II)

Java 동기화된 객체(III)

Java 예외 처리

Java 목록(List)

Java Queue(큐)

Java Map 집합

Java Set 집합

Java 입력/출력(I/O)/O)

Java Reader/Writer

Java 다른 주제

Java NavigableSet 인터페이스

이 튜토리얼에서는 Java NavigableSet 인터페이스 및 메서드를 예제를 통해 배웁니다。

Java Collections 프레임워크의 NavigableSet 인터페이스는 집합 요소 사이에서 탐색 기능을 제공합니다。

그것은SortedSet의 하나

NavigableSet 구현 클래스

NavigableSet 인터페이스의 기능을 사용하려면 TreeSet 구현의 NavigableSet 클래스를 사용해야 합니다。

NavigableSet을 어떻게 사용하나요?

NavigableSet 인터페이스의 기능을 사용하려면 TreeSet 클래스를 사용해야 합니다。

// TreeSet 클래스의 SortedSet 구현
NavigableSet<String> numbers = new TreeSet<>();

여기서는 TreeSet 클래스의 numbers라는 이름의 탐색 가능 집합을 생성했습니다。

NavigableSet의 메서드

NavigableSet는 SortedSet의 하나로 간주됩니다. 이는 NavigableSet이 SortedSet 인터페이스를 상속했기 때문입니다。

따라서 모든 SortedSet 메서드는 NavigableSet에서도 사용할 수 있습니다. 이 메서드들에 대해 더 알고 싶다면Java SortedSet

하지만 NavigableSet에서는 SortedSet의 일부 메서드(headSet(), tailSet(), subSet())을 다른 방식으로 정의했습니다。

NavigableSet에서 이 메서드들을 어떻게 정의하는지 보겠습니다。

headSet(element,booleanValue)

headSet() 메서드는 지정된 요소 이전의 모든 요소( 매개변수로 전달된 요소)를 반환합니다。

booleanValue 매개변수는 선택 사항입니다. 기본 값은 false입니다。

如果booleanValue의值为true,则该方法返回指定元素之前的所有元素,包括指定元素。

tailSet(element,booleanValue)

tailSet()는 지정된 요소( 매개변수로 전달) 이후의 모든 요소를 반환하고 지정된 요소를 포함합니다.

booleanValue 파라미터는 선택 사항입니다. 기본 값은 true입니다.

booleanValue가 false면, 이 메서드는 지정된 요소 이후의 모든 요소를 반환하고 지정된 요소를 포함하지 않습니다.

subSet(e1,bv1,e2,bv2)

subSet() 메서드는 e를 반환1과 e2e를 포함한 모든 요소들 사이1。

bv1과 bv2는 선택 사항입니다. bv1기본 값은 true, bv2기본 값은 false입니다.

false를 전달하면1전달되면 이 메서드는 e를 반환1과 e2e를 포함하지 않는 모든 요소들 사이1。

true를 전달하면2전달되면 이 메서드는 e를 반환1과 e2e를 포함한 모든 요소들 사이1。

NavigableSet은 요소 탐색에 사용할 수 있는 다양한 메서드를 제공합니다.

  • DescendingSet() - 요소 순서를 반대로 변경

  • DescendingIterator() - 반대 순서로 요소를 반복할 수 있는 이터레이터를 반환

  • ceiling() - 지정된 요소보다 크거나 같은 요소들 중 가장 작은 요소를 반환

  • floor() - 지정된 요소보다 작거나 같은 요소들 중 가장 큰 요소를 반환

  • Higher() - 지정된 요소보다 큰 요소들 중 가장 작은 요소를 반환

  • lower() - 지정된 요소보다 작은 요소들 중 가장 큰 요소를 반환

  • pollFirst() - 최초 요소를 반환하고 집합에서 제거

  • pollLast() - 최종 요소를 반환하고 집합에서 제거

TreeSet에서 NavigableSet 구현

import java.util.NavigableSet;
import java.util.TreeSet;
class Main {
    public static void main(String[] args) {
        //TreeSet을 사용하여 NavigableSet 생성
        NavigableSet<Integer> numbers = new TreeSet<>();
        //집합에 요소 추가
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        System.out.println("NavigableSet: " ); + numbers);
        //첫 번째 요소에 접근
        int firstElement = numbers.first();
        System.out.println("첫 번째 요소: " ); + firstElement);
        //최종 요소에 접근
        int lastElement = numbers.last();
        System.out.println("마지막 요소: " + lastElement);
        //첫 번째 요소를 제거하려면
        int number1 = numbers.pollFirst();
        System.out.println("첫 번째 요소를 제거하려면: " + number1);
        //마지막 요소를 제거하려면
        int number2 = numbers.pollLast();
        System.out.println("마지막 요소를 제거하려면: " + number2);
    }
}

출력 결과

NavigableSet: [1, 2, 3]
첫 번째 요소: 1
마지막 요소: 3
첫 번째 요소를 제거하려면: 1
마지막 요소를 제거하려면: 3

TreeSet에 대한更多信息를 얻으려면 방문하세요Java TreeSet

NavigableSet 인터페이스를 알고 있으면서, TreeSet 클래스를 사용하여 그 구현을 배웁니다.