There are two variants of descending() in Java.util.TreeMap, both are discussed in this article.
1. descendingKeySet(): It returns a reverse order Navigable Set view of the keys contained in the map.
Syntax :
public NavigableSet descendingKeySet()
Parameters:
NA
Return Value:
It returns a reverse order navigable set view of the keys in this map.
Exception:
NA
// Java code to demonstrate the working
// descendingKeySet()
import java.io.*;
import java.util.*;
public class descendingKeySet1 {
public static void main(String[] args)
{
// Declaring the tree map of Integer and String
TreeMap<Integer, String> treemap = new TreeMap<Integer, String>();
// assigning the values in the tree map
// using put()
treemap.put(2, "two");
treemap.put(0, "zero");
treemap.put(3, "three");
treemap.put(6, "six");
treemap.put(9, "nine");
treemap.put(7, "seven");
// putting values in navigable set
// use of descendingKeySet
NavigableSet set1 = treemap.descendingKeySet();
System.out.println("Navigable set values are: " + set1);
}
}
Output:
Navigable set values are: [9, 7, 6, 3, 2, 0]
2. descendingMap() : It returns a reverse order view of the mappings contained in the map.
Syntax :
public NavigableMap descendingMap()
Parameters:
NA
Return Value
It returns a reverse order view of the map.
Exception:
NA
// Java code to demonstrate the working
// of descendingMap()
import java.io.*;
import java.util.*;
public class descendingMap {
public static void main(String[] args)
{
// Declaring the tree map of Integer and String
TreeMap<Integer, String> treemap = new TreeMap<Integer, String>();
// assigning the values in the tree map
// using put()
treemap.put(2, "two");
treemap.put(0, "zero");
treemap.put(3, "three");
treemap.put(6, "six");
treemap.put(9, "nine");
treemap.put(7, "seven");
// putting values in navigable map
// use of descendingMap()
NavigableMap map1 = treemap.descendingMap();
System.out.println("Navigable map values are: " + map1);
}
}
Output:
Navigable map values are: {9=nine, 7=seven, 6=six, 3=three, 2=two, 0=zero}
Practical Application : There are many applications possible of descending functions explained in this article. Some among them are priority scheduling, or designing a ranking system. Latter one is demonstrated in the code below.
// Java code to demonstrate the application
// of descendingMap() and descendingKetSet()
import java.io.*;
import java.util.*;
public class descendingAppli {
public static void main(String[] args)
{
// Declaring the tree map of Integer and String
// to store participants info of scores with name
TreeMap<Integer, String> participants = new TreeMap<Integer, String>();
// assigning score of participants
// using put()
participants.put(30, "Ashty");
participants.put(45, "Shavi");
participants.put(16, "Vaish");
participants.put(15, "Kil");
participants.put(11, "Manju");
// putting ranks in NavigableMap
// use of descendingMap() to assign 1st to
// maximum values and so on
NavigableMap<Integer, String> Ranks = participants.descendingMap();
System.out.println("The ranks according to scores are : ");
// Printing values rankwise
int count = 0;
for (NavigableMap.Entry<Integer, String> entry : Ranks.entrySet()) {
count++;
String str = Integer.toString(count);
System.out.println("Rank " + str + ": " + entry.getValue());
}
}
}
Output:
The ranks according to scores are :
Rank 1: Shavi
Rank 2: Ashty
Rank 3: Vaish
Rank 4: Kil
Rank 5: Manju
0 comments:
Post a Comment