자바 NavigableSet

(Java NavigableSet에서 넘어옴)

개요[ | ]

기존 sortedset 에서 몇가지 기능이 추가됨
  • 추가 기능 확인 ( descending )
Java
CPU
1.5s
MEM
79M
1.0s
Copy
import java.util.NavigableSet;
import java.util.TreeSet;
 
public class NavigableSetDemo
{
    public static void main(String[] args)
    {
        NavigableSet<Integer> ns = new TreeSet<>();
        ns.add(0);
        ns.add(2);
        ns.add(4);
        ns.add(6);
        ns.add(1);
        ns.add(3);
        ns.add(5);
        System.out.println("ns: " + ns); // sorted

        NavigableSet<Integer> reverseNs = ns.descendingSet();
        System.out.println("reverseNs: " + reverseNs); // reverse sorted
    }
}
ns: [0, 1, 2, 3, 4, 5, 6]
reverseNs: [6, 5, 4, 3, 2, 1, 0]

  • 추가 기능 확인 ( 근접한 값 찾기 higher, lower, floor, ceiling )
Java
Copy
import java.util.NavigableSet;
import java.util.TreeSet;
 
public class NavigableSetDemo
{
    public static void main(String[] args)
    {
        NavigableSet<Integer> ns = new TreeSet<>();
        ns.add(0);
        ns.add(1);
        ns.add(2);
        ns.add(3);
        ns.add(4);
        ns.add(5);
        ns.add(6);

 
        NavigableSet<Integer> threeOrMore = ns.tailSet(3, true);
        System.out.println("3 or  more:  " + threeOrMore);
        System.out.println("lower(3): " + ns.lower(3));
        System.out.println("floor(3): " + ns.floor(3));
        System.out.println("higher(3): " + ns.higher(3));
        System.out.println("ceiling(3): " + ns.ceiling(3));

    }
}
Loading
  • 추가된 기능 ( pollFirst, pollLast )
Java
Copy
import java.util.NavigableSet;
import java.util.TreeSet;
 
public class NavigableSetDemo
{
    public static void main(String[] args)
    {
        NavigableSet<Integer> ns = new TreeSet<>();
        ns.add(0);
        ns.add(1);
        ns.add(2);
        ns.add(3);
        ns.add(4);
        ns.add(5);
        ns.add(6);

 
        System.out.println("pollFirst(): " + ns.pollFirst());
        System.out.println("Navigable Set:  " + ns);
 
        System.out.println("pollLast(): " + ns.pollLast());
        System.out.println("Navigable Set:  " + ns);
 
        System.out.println("pollFirst(): " + ns.pollFirst());
        System.out.println("Navigable Set:  " + ns);
 
        System.out.println("pollFirst(): " + ns.pollFirst());
        System.out.println("Navigable Set:  " + ns);
 
        System.out.println("pollFirst(): " + ns.pollFirst());
        System.out.println("Navigable Set:  " + ns);
 
        System.out.println("pollFirst(): " + ns.pollFirst());
        System.out.println("pollLast(): " + ns.pollLast());
    }
}
Loading