Java Tutorial/Collections/NavigableMap
Содержание
- 1 Create NavigableMap from TreeMap
- 2 Get ceiling key from NavigableMap
- 3 Get first key and first entry from NavigableMap
- 4 Get floor key from NavigableMap
- 5 Get higher key from NavigableMap
- 6 Get last key and last entry from NavigableMap
- 7 Get lower key from NavigableMap
- 8 Get navigable key set from NavigableMap
- 9 NavigableMap Demo
- 10 The NavigableMap Interface
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
System.out.printf("First key: %s\tFirst entry: %s%n", nav.firstKey(), nav.firstEntry());
}
}
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
System.out.printf("Key ceiling after Sunday: %s%n", nav.ceilingKey("Sunday"));
}
}
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
System.out.printf("First key: %s\tFirst entry: %s%n", nav.firstKey(), nav.firstEntry());
}
}
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
System.out.printf("Key floor before Sunday: %s%n", nav.floorKey("Sunday"));
}
}
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
System.out.printf("Key higher after Sunday: %s%n", nav.higherKey("Sunday"));
}
}
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
System.out.printf("Last key: %s\tLast entry: %s%n", nav.lastKey(), nav.lastEntry());
}
}
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
System.out.printf("Key lower before Sunday: %s%n", nav.lowerKey("Sunday"));
}
}
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
System.out.printf("Map before Sunday: %s%n", nav.navigableKeySet());
}
}
import java.util.Calendar;
import java.util.Locale;
import java.util.Map;
import java.util.NavigableMap;
import java.util.TreeMap;
public class NavigableMapSample {
public static void main(String args[]) {
Calendar now = Calendar.getInstance();
Locale locale = Locale.getDefault();
Map<String, Integer> names = now.getDisplayNames(Calendar.DAY_OF_WEEK, Calendar.LONG, locale);
NavigableMap<String, Integer> nav = new TreeMap<String, Integer>(names);
System.out.printf("Whole list:%n%s%n", nav);
}
}
The java.util.NavigableMap interface, a new addition to Java 6, inherits SortedMap to add navigation methods that allows for key/value pair searching.
The java.util.TreeMap class in Java 6 implements NavigableMap.
import java.util.NavigableMap;
import java.util.TreeMap;
import java.util.Map.Entry;
public class NavigableMapDemo {
public static void main(String[] args) {
NavigableMap<Integer, String> map = new TreeMap<Integer, String>();
map.put(2, "two");
map.put(1, "one");
map.put(3, "three");
System.out.println("Original map: " + map + "\n");
Entry firstEntry = map.pollFirstEntry();
System.out.println("First entry: " + firstEntry);
System.out.println("After polling the first entry: " + map + "\n");
Entry lastEntry = map.pollLastEntry();
System.out.println("Last entry:" + lastEntry);
System.out.println("After polling last entry:" + map);
}
}
Original map: {1=one, 2=two, 3=three} First entry: 1=one After polling the first entry: {2=two, 3=three} Last entry:3=three After polling last entry:{2=two}