Class Word

  • All Implemented Interfaces:
    java.util.Comparator

    public class Word
    extends java.lang.Object
    implements java.util.Comparator
    The Word object holds information for one suggested spelling. It contains both the suggested word string and the distance cost, which represents how different the suggested word is from the misspelling.

    This class is now immutable.

    • Constructor Summary

      Constructors 
      Constructor Description
      Word()
      Constructs a new Word.
      Word​(java.lang.String word, int score)
      Constructs a new Word.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int compare​(java.lang.Object o1, java.lang.Object o2)
      Compares two words, mostly for the purpose of sorting words.
      boolean equals​(java.lang.Object o)
      Indicates if this word is equal to another one.
      int getCost()
      A cost measures how close a match this word was to the original word
      java.lang.String getWord()
      gets suggested spelling
      void setWord​(java.lang.String word)
      sets suggested spelling
      java.lang.String toString()
      returns the suggested spelling
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Comparator

        reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
    • Constructor Detail

      • Word

        public Word​(java.lang.String word,
                    int score)
        Constructs a new Word.
        Parameters:
        word - The text of a word.
        score - The word's distance cost
      • Word

        public Word()
        Constructs a new Word.
    • Method Detail

      • compare

        public int compare​(java.lang.Object o1,
                           java.lang.Object o2)
        Compares two words, mostly for the purpose of sorting words.
        Specified by:
        compare in interface java.util.Comparator
        Parameters:
        o1 - the first word
        o2 - the second word
        Returns:
        -1 if the first word is more similar to the misspelled word
        1 if the second word is more similar to the misspelled word
        0 if both words are equally similar
      • equals

        public boolean equals​(java.lang.Object o)
        Indicates if this word is equal to another one.
        Specified by:
        equals in interface java.util.Comparator
        Overrides:
        equals in class java.lang.Object
        Parameters:
        o - The other word to compare
        Returns:
        The indication of equality
      • getWord

        public java.lang.String getWord()
        gets suggested spelling
        Returns:
        the actual text of the suggest spelling
      • setWord

        public void setWord​(java.lang.String word)
        sets suggested spelling
        Parameters:
        word - The text to set for suggestd spelling
      • getCost

        public int getCost()
        A cost measures how close a match this word was to the original word
        Returns:
        0 if an exact match. Higher numbers are worse matches.
        See Also:
        EditDistance
      • toString

        public java.lang.String toString()
        returns the suggested spelling
        Overrides:
        toString in class java.lang.Object
        Returns:
        The word's text