import java.util.List;
import java.util.Scanner;
import java.io.File;

/**
 * Dictionary implementation that utilizes a SortedArrayList.
 *   @author Dave Reed
 *   @version 8/24/24
 */
public class Dictionary {
    private List<String> words;
    
    public Dictionary() {
        this.words = new SortedArrayList<String>();
    }
    
    public Dictionary(String filename) {
        this();

        try {
            Scanner infile = new Scanner(new File(filename));
            while (infile.hasNext()) {
                String nextWord = infile.next();
                this.add(nextWord.toLowerCase());
            }
            infile.close();
        }
        catch (java.io.FileNotFoundException e) {
            System.out.println("FILE NOT FOUND");
        }
    }
    
    public void add(String newWord) {
        this.words.add(newWord.toLowerCase());
    }
    
    public void remove(String oldWord) {
        this.words.remove(oldWord.toLowerCase());
    }
    
    public boolean contains(String testWord) {
        return this.words.contains(testWord.toLowerCase());
    }
}
