org.apache.lucene.search.spell

## Class JaroWinklerDistance

- java.lang.Object
- - org.apache.lucene.search.spell.JaroWinklerDistance

- All Implemented Interfaces:
    StringDistance

      public class JaroWinklerDistance
      extends Object
      implements StringDistance

  Similarity measure for short strings such as person names.

  See Also:
    http://en.wikipedia.org/wiki/Jaro%E2%80%93Winkler_distance

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `JaroWinklerDistance()` Creates a new distance metric with the default threshold for the Jaro Winkler bonus (0.7)

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object obj)`
    `float` | `getDistance(String s1, String s2)` Returns a float between 0 and 1 based on how similar the specified strings are to one another.
    `float` | `getThreshold()` Returns the current value of the threshold used for adding the Winkler bonus.
    `int` | `hashCode()`
    `void` | `setThreshold(float threshold)` Sets the threshold used to determine when Winkler bonus should be used.
    `String` | `toString()`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### JaroWinklerDistance

          public JaroWinklerDistance()

      Creates a new distance metric with the default threshold for the Jaro Winkler bonus (0.7)
      See Also:
        `setThreshold(float)`

  - ### Method Detail

    - #### getDistance

          public float getDistance(String s1,
                          String s2)

      Description copied from interface: `StringDistance`
      Returns a float between 0 and 1 based on how similar the specified strings are to one another. Returning a value of 1 means the specified strings are identical and 0 means the string are maximally different.
      Specified by:
        `getDistance` in interface `StringDistance`
      Parameters:
        `s1` - The first string.
        `s2` - The second string.
      Returns:
        a float between 0 and 1 based on how similar the specified strings are to one another.

    - #### setThreshold

          public void setThreshold(float threshold)

      Sets the threshold used to determine when Winkler bonus should be used. Set to a negative value to get the Jaro distance.
      Parameters:
        `threshold` - the new value of the threshold

    - #### getThreshold

          public float getThreshold()

      Returns the current value of the threshold used for adding the Winkler bonus. The default value is 0.7.
      Returns:
        the current value of the threshold

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### equals

          public boolean equals(Object obj)

      Overrides:
        `equals` in class `Object`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.