0

私のコードは次のとおりです。

public class Main{

    public static void main(String[] args){
        WordGroup wordgroupOne= new WordGroup ("You can discover more about a person in an hour of play than in a year of conversation");
        WordGroup wordgroupTwo= new WordGroup ( "When you play play hard when you work dont play at all");

        String[] quoteOne = wordgroupOne.getWordArray();    
        String[] quoteTwo = wordgroupTwo.getWordArray();

        for (String words : quoteOne){
            System.out.println(words);
        }

        for (String words : quoteTwo){                     
            System.out.println(words);
        }

    }

}

WordGroup クラス:

import java.util.HashSet;
import java.util.HashMap;

public class WordGroup {
    public String words;

    public WordGroup (String getWords){
        words = getWords.toLowerCase();
    }

    public String[] getWordArray(){
        return words.split(" ");   
    }

    public HashSet<String> getWordSet(){
        HashSet<String> set = new HashSet<String>();
        String[] p = getWordArray();
        for (String items : p){
            set.add(items);
        }
        System.out.println(set);
        return set;
    }

    public HashMap<String, Integer> getWordCounts() {
        HashMap<String, Integer> map = new HashMap<String, Integer>();
        String[] q = getWordArray();
        for (String stuff : q) {
            Integer oldVal = map.get(stuff);
            if (oldVal == null){
                oldVal = 0;
            }
            map.put(stuff, oldVal+1);
        }
        System.out.println(map);
        return map;
    }

}

私がやろうとしているのは、2 つの WordGroups を使用して getWordSet() メソッドを使用し、返された HashSet を反復またはループして、そこから単語を出力することです。

2 つの WordGroup で getWordCounts() を呼び出します。keySet() を使用してキーのセットを取得します。このセットをループして、両方の WordGroup の単語とそのカウントを出力します。

getWordSet() メソッドを使用して、両方の WordGroup からすべての単語の完全なセットを作成します。新しい HashSet をループして、各ハッシュマップからの合計数を含むすべての単語の完全なリストを出力します。

私はこれらすべてに苦労しています。どんな助けでも大歓迎です!!

4

1 に答える 1