Java TreeMap lowerEntry() Method



Description

The Java TreeMap lowerEntry(K key) method is used to return a key-value mapping associated with the greatest key strictly less than the given key, or null if there is no such key.

Declaration

Following is the declaration for java.util.TreeMap.lowerEntry() method.

public Map.Entry<K,V> lowerEntry(K key)

Parameters

key − This is the key to be checked.

Return Value

The method call returns an entry with the greatest key less than key, or null if there is no such key.

Exception

  • ClassCastException − This exception is thrown if the specified key cannot be compared with the keys currently in the map.

  • NullPointerException − This exception is thrown if the specified key is null and this map uses natural ordering, or its comparator does not permit null keys.

Getting Lower Mapping from a TreeMap of Integer,Integer Pair Example

The following example shows the usage of Java TreeMap lowerEntry() method to get the mapping associated with the greatest key strictly less than the given key in the map. We've created a TreeMap object of Integer,Integer pairs. Then few entries are added, and using lowerEntry() we're printing the relevant mapping for a given key.

package com.tutorialspoint;

import java.util.TreeMap;

public class TreeMapDemo {
   public static void main(String[] args) {

      // creating tree map 
      TreeMap<Integer, Integer> treemap = new TreeMap<>();

      // populating tree map
      treemap.put(2, 2);
      treemap.put(1, 1);
      treemap.put(3, 3);
      treemap.put(6, 6);
      treemap.put(5, 5);

      // getting lower entry  
      System.out.println("Checking lower entry");
      System.out.println("Value is: "+ treemap.lowerEntry(5));
   }    
}

Output

Let us compile and run the above program, this will produce the following result.

Checking lower entry
Value is: 3=3

Getting Lower Mapping from a TreeMap of Integer,String Pair Example

The following example shows the usage of Java TreeMap lowerEntry() method to get the mapping associated with the greatest key strictly less than the given key in the map. We've created a TreeMap object of Integer,String pairs. Then few entries are added, and using lowerEntry() we're printing the relevant mapping for a given key.

package com.tutorialspoint;

import java.util.TreeMap;

public class TreeMapDemo {
   public static void main(String[] args) {

      // creating tree map 
      TreeMap<Integer, String> treemap = new TreeMap<>();

      // populating tree map
      treemap.put(2, "two");
      treemap.put(1, "one");
      treemap.put(3, "three");
      treemap.put(6, "six");
      treemap.put(5, "five");

      // getting lower entry  
      System.out.println("Checking lower entry");
      System.out.println("Value is: "+ treemap.lowerEntry(5));
   }    
}

Output

Let us compile and run the above program, this will produce the following result.

Checking lower entry
Value is: 3=three

Getting Lower Mapping from a TreeMap of Integer,Object Pair Example

The following example shows the usage of Java TreeMap lowerEntry() method to get the mapping associated with the greatest key strictly less than the given key in the map. We've created a TreeMap object of Integer,Student pairs. Then few entries are added, and using lowerEntry() we're printing the relevant mapping for a given key.

package com.tutorialspoint;

import java.util.TreeMap;

public class TreeMapDemo {
   public static void main(String[] args) {

      // creating tree map 
      TreeMap<Integer, Student> treemap = new TreeMap<>();

      // populating tree map
      treemap.put(2, new Student(2, "Robert"));
      treemap.put(1, new Student(1, "Julie"));  
      treemap.put(3, new Student(3, "Adam"));
      treemap.put(6, new Student(5, "Julia"));
      treemap.put(5, new Student(5, "Tom"));

      // getting lower entry  
      System.out.println("Checking lower entry");
      System.out.println("Value is: "+ treemap.lowerEntry(5));
   }    
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
   @Override
   public boolean equals(Object obj) {
      if(obj == null) return false;
      Student s = (Student)obj;
      return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
   }
}

Output

Let us compile and run the above program, this will produce the following result.

Checking lower entry
Value is: 3=[ 3, Adam ]
java_util_treemap.htm
Advertisements