Comment calculer le nombre de Valeurs Uniques dans une ArrayList?

Je dois compter le nombre de mots uniques à partir d'un document texte à l'aide de Java. J'ai d'abord dû se débarrasser de la ponctuation dans tous les mots. J'ai utilisé le Scanner classe à l'analyse de chaque mot dans le document et de le placer dans une Chaîne de ArrayList.

Donc, la prochaine étape est l'endroit où je vais avoir le problème! Comment puis-je créer une méthode qui peut compter le nombre de Chaînes uniques dans le tableau?

Par exemple, si le tableau contient des apple, bob, apple, jim, bob; le nombre de valeurs uniques dans ce tableau est de 3.


public countWords() {
    try {
        Scanner scan = new Scanner(in);
        while (scan.hasNext()) {
            String words = scan.next();
            if (words.contains(".")) {
                words.replace(".", "");
            }
            if (words.contains("!")) {
                words.replace("!", "");
            }
            if (words.contains(":")) {
                words.replace(":", "");
            }
            if (words.contains(",")) {
                words.replace(",", "");
            }
            if (words.contains("'")) {
                words.replace("?", "");
            }
            if (words.contains("-")) {
                words.replace("-", "");
            }
            if (words.contains("‘")) {
                words.replace("‘", "");
            }
            wordStore.add(words.toLowerCase());
        }
    } catch (FileNotFoundException e) {
        System.out.println("File Not Found");
    }
    System.out.println("The total number of words is: " + wordStore.size());
}
Il y a aucune restriction à ce que vous pouvez ou ne pouvez pas l'utiliser?
ne leurs sont pas de restrictions!

OriginalL'auteur | 2012-10-04