Рубрики
Без рубрики

Как работать с навигационным набором Java 6 и навигационной картой

– Как работать с навигационным набором Java 6 и навигационной картой

Вы можете использовать API коллекции последней версии Java 6 для навигации по наборам и коллекциям карт. Эти API предоставляют большую гибкость для получения требуемого результата из коллекции.

1. Пример навигационной карты

package com.example.collection;

import java.util.NavigableMap;
import java.util.TreeMap;

public class NavigableMapDemo {

  public static void main(String[] args) {
		
	NavigableMap navigableMap=new TreeMap();
		
	navigableMap.put("X", 500);
	navigableMap.put("B", 600);
	navigableMap.put("A", 700);
	navigableMap.put("T", 800);
	navigableMap.put("Y", 900);
	navigableMap.put("Z", 200);
		
	System.out.printf("Descending Set  : %s%n",navigableMap.descendingKeySet());
		
	System.out.printf("Floor Entry  : %s%n",navigableMap.floorEntry("L"));
		
	System.out.printf("First Entry  : %s%n",navigableMap.firstEntry());
		
	System.out.printf("Last Key : %s%n",navigableMap.lastKey());
		
	System.out.printf("First Key : %s%n",navigableMap.firstKey());
		
	System.out.printf("Original Map : %s%n",navigableMap);
		
	System.out.printf("Reverse Map : %s%n",navigableMap.descendingMap());
			
  }
	
}

Выход

Descending Set  : [Z, Y, X, T, B, A]
Floor Entry  : B=600
First Entry  : A=700
Last Key : Z
First Key : A
Original Map : {A=700, B=600, T=800, X=500, Y=900, Z=200}
Reverse Map : {Z=200, Y=900, X=500, T=800, B=600, A=700}

2. Пример набора навигации

package com.example.collection;

import java.util.Arrays;
import java.util.Iterator;
import java.util.NavigableSet;
import java.util.TreeSet;

public class NavigableSetDemo {

  public static void main(String[] args) {

	NavigableSet navigableSet = new TreeSet(Arrays.asList(
			"X", "B", "A", "Z", "T"));

	Iterator iterator = navigableSet.descendingIterator();

	System.out.println("Original Set :");
	while (iterator.hasNext()) {
		System.out.println(iterator.next());
	}

	iterator = navigableSet.iterator();

	System.out.println("Sorted Navigable Set :");

	while (iterator.hasNext()) {
		System.out.println(iterator.next());
	}

	System.out.printf("Head Set : %s.%n", navigableSet.headSet("X"));

	System.out.printf("Tail Set : %s.%n", navigableSet.tailSet("T", false));

	System.out.printf("Sub Set : %s.%n",
			navigableSet.subSet("B", true, "X", true));

	System.out.printf("Last Element : %s%n", navigableSet.last());

	System.out.printf("First Element : %s%n", navigableSet.first());

	System.out.printf("Reverse Set : %s%n", navigableSet.descendingSet());

	System.out.printf("Original Set : %s%n", navigableSet);

  }

}

Выход

Original Set :
Z
X
T
B
A
Sorted Navigable Set :
A
B
T
X
Z
Head Set : [A, B, T].
Tail Set : [X, Z].
Sub Set : [B, T, X].
Last Element : Z
First Element : A
Reverse Set : [Z, X, T, B, A]
Original Set : [A, B, T, X, Z]

Скачать Исходный Код

Рекомендации

  1. Навигационная карта JavaDoc
  2. Навигационный набор javadoc

Оригинал: “https://mkyong.com/java/how-to-work-with-java-6s-navigableset-and-navigablemap/”