Java TreeMap floorEntry() Method



Description

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

Declaration

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

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

Parameters

key − This is the key to be matched.

Return Value

The method call returns an entry with the greatest key less than or equal to 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 Floor Key from a TreeMap of Integer, Integer Pairs Example

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

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);

      System.out.println("Checking floor entry for 6");
      System.out.println("Value is: "+ treemap.floorEntry(6));
   }    
}

Output

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

Checking floor entry for 6
Value is: 6=6

Getting First Key from a TreeMap of Integer, String Pairs Example

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

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");

      System.out.println("Checking floor entry for 6");
      System.out.println("Value is: "+ treemap.floorEntry(6));
   }    
}

Output

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

Checking floor entry for 6
Value is: 6=six

Getting First Key from a TreeMap of Integer, Object Pairs Example

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

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(6, "Julia"));
      treemap.put(5, new Student(5, "Tom"));

      System.out.println("Checking floor entry for 6");
      System.out.println("Value is: "+ treemap.floorEntry(6));
   }    
}
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 floor entry for 6
Value is: 6=[ 6, Julia ]
java_util_treemap.htm
Advertisements