Interface BiStringLookup<U>

Type Parameters:
U - The second argument type.
All Superinterfaces:
StringLookup
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

Lookups a String key for a String value.

This class represents the simplest form of a string to string map. It has a benefit over a map in that it can create the result on demand based on the key.

For example, it would be possible to implement a lookup that used the key as a primary key, and looked up the value on demand from the database.

Like BiFunction is a variant of Function, this BiStringLookup is a variant of StringLookup.

Since:
1.9
  • Method Summary

    Modifier and Type
    Method
    Description
    default String
    lookup(String key, U object)
    Looks up a String key to provide a String value.

    Methods inherited from interface org.apache.commons.text.lookup.StringLookup

    lookup
  • Method Details

    • lookup

      default String lookup(String key, U object)
      Looks up a String key to provide a String value.

      The internal implementation may use any mechanism to return the value. The simplest implementation is to use a Map. However, virtually any implementation is possible.

      For example, it would be possible to implement a lookup that used the key as a primary key, and looked up the value on demand from the database Or, a numeric based implementation could be created that treats the key as an integer, increments the value and return the result as a string - converting 1 to 2, 15 to 16 etc.

      This method always returns a String, regardless of the underlying data, by converting it as necessary. For example:

       Map<String, Object> map = new HashMap<String, Object>();
       map.put("number", new Integer(2));
       assertEquals("2", StringLookupFactory.biFunctionStringLookup(map).lookup("number", "A context object"));
       
      Parameters:
      key - the key to look up, may be null.
      object - ignored by default.
      Returns:
      The matching value, null if no match.