コードが実行されていない理由は何ですか?

user10957732:

私は初心者で、他の人の質問から学んだことからいくつかの方法を試しましたが、それでもコードを実行できません。

 import java.util.HashMap;
 import java.util.Scanner;
 import java.util.Set;
 import java.util.HashSet;
 import java.util.Map;


public class Utilities {

private HashMap<String,Integer> myMap;

public Utilities() {
    myMap = new HashMap<String, Integer>();
}

public void populateHashMap() {
    Scanner input = new Scanner(System.in);

    while(input.hasNext()) {
        String next = input.next();
        Integer count = myMap.get(next);
        if(myMap != null) {
            myMap.put(next, count + 1);
        }else {
            myMap.put(next, 1);
        }
    }
    input.close();
}

public void displayCollection() {
    populateHashMap();
    Set<Map.Entry<String, Integer>> enteries = myMap.entrySet();
    for(Map.Entry<String, Integer> entery : enteries) {
        System.out.print("Key: " + entery.getKey());
        System.out.print(", Value" + entery.getValue());
    }
}

 public static void main(String[] args) {
 Utilities demo = new Utilities();
 demo.populateHashMap();
 demo.displayCollection();

 }
}

次のメソッドを作成することになっています。

  • メソッドpopulateHashMap()。メソッドはスキャナーを使用して、ユーザーからテキストピースを取得します。各単語はキーとして使用されます。整数は、単語がテキストに現れる回数です。

  • メソッドdisplayCollection()の場合、メソッドは各キーと、指定されたテキストに出現した回数を表示します。

これをコード実行できない理由を誰かに教えてもらえれば幸いです。

Arvind Kumar Avinash:

コードには多くの問題があります:

  1. あなたは閉じてはいけませんScannerためSystem.inそれ以外の場合System.inも閉じられ、再び開く方法はありません。つまり、からもう一度スキャンしようとするSystem.inと、プログラムは失敗します。
  2. 次のコードでは、上の操作を実行したmyMap、その後、あなたはそれがある場合にチェックしたnull場合に到達することはないではないであろうmyMapですnull
Integer count = myMap.get(next);
if (myMap != null) {
    //...
}

サイドノート:

  1. ユーザーが予期される入力を知ることができるように、入力前に常にメッセージを表示する必要があります。

  2. populateHashMap次のように簡略化できます。

public void populateHashMap() {
    Scanner input = new Scanner(System.in);
    System.out.print("Enter the words: ");
    String line = input.nextLine();
    for (String next : line.split("\\s+")) {
        myMap.put(next, myMap.getOrDefault(next, 0) + 1);
    }
}
  1. populateHashMap()から呼び出す必要がある理由はありませんdisplayCollection()

  2. この方法は、displayCollection()次のように簡略化することもできます。

public void displayCollection() {
    for (Entry<String, Integer> entry : myMap.entrySet()) {
        System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
    }
}

以下に示すのは、これらすべてのコメントを組み込んだコードです。

import java.util.HashMap;
import java.util.Map.Entry;
import java.util.Scanner;

public class Utilities {

    private HashMap<String, Integer> myMap;

    public Utilities() {
        myMap = new HashMap<String, Integer>();
    }

    public void populateHashMap() {
        Scanner input = new Scanner(System.in);
        System.out.print("Enter the words separated by space: ");
        String line = input.nextLine();
        for (String next : line.split("\\s+")) {
            myMap.put(next, myMap.getOrDefault(next, 0) + 1);
        }
    }

    public void displayCollection() {
        for (Entry<String, Integer> entry : myMap.entrySet()) {
            System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
        }
    }

    public static void main(String[] args) {
        Utilities demo = new Utilities();
        demo.populateHashMap();
        demo.displayCollection();
    }
}

サンプル実行:

Enter the words separated by space: hello hi bye hello bye
Key: hi, Value: 1
Key: hello, Value: 2
Key: bye, Value: 2

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Mysqlが何らかの理由で実行されていない

分類Dev

コードがコードブロックで実行されているのにVSStudioでは実行されていないのはなぜですか

分類Dev

SQL Serverがサービスで実行されていない理由は何でしょうか?

分類Dev

SQL Serverがサービスで実行されていない理由は何でしょうか?

分類Dev

不和ボットコードが何も実行されないのはなぜですか?

分類Dev

この難読化されたCコードはmain()なしで実行すると主張していますが、実際には何をしますか?

分類Dev

codeigniterhelloworldアプリが何らかの理由で実行されていない

分類Dev

ロックされているコードの実行は、ロックされていないコードよりも時間がかかるはずです

分類Dev

Pythonで、正常に実行されている(終了コード0)が結果がない(何も印刷されない)ときにコードを修正するにはどうすればよいですか?

分類Dev

コードはコンパイルされて正常に実行されますが、期待される出力は「Sub」が印刷されないことです。このコードのエラーは何ですか?

分類Dev

このJavaScriptコードが実行されないのはなぜですか?

分類Dev

このjqueryコードが実行されないのはなぜですか?

分類Dev

Javascriptコードが実行されないのはなぜですか?

分類Dev

Pythonコードが完全に実行されないのはなぜですか

分類Dev

QThreadPoolが並列ではなく順番に実行されていますが、コードスレッドが並列で実行されない原因は何ですか?

分類Dev

私のjsコードがjsfiddleで実行されていない理由を誰かに教えてもらえますか?

分類Dev

コードがメインスレッドで実行されているのはなぜですか?

分類Dev

コードがメインスレッドで実行されているのはなぜですか?

分類Dev

PyCharmで実行されているが、Jupyterでは実行されていないコード

分類Dev

ajaxが実行したときにphpコードが実行されないのはなぜですか

分類Dev

コードが正しく実行されないのはなぜですか?声明の場合、これの問題は何ですか?

分類Dev

このコードがPineScript 4で実行されないのはなぜですか?"宣言されていない識別子"

分類Dev

ListViewが表示されていない場合、更新コードは実行されますか?

分類Dev

不和コードが理由もなく複数回実行されている

分類Dev

catch内のコードが実行されない理由

分類Dev

条件が満たされていないのに、コードがwhileループを実行しているのはなぜですか?

分類Dev

jQuery関数が実行されない原因は何ですか?

分類Dev

onSubmit = "return checkTheForm()"が実行されない原因は何ですか?

分類Dev

何かがノードで実行されるのにREPLでは実行されないのはなぜですか?

Related 関連記事

  1. 1

    Mysqlが何らかの理由で実行されていない

  2. 2

    コードがコードブロックで実行されているのにVSStudioでは実行されていないのはなぜですか

  3. 3

    SQL Serverがサービスで実行されていない理由は何でしょうか?

  4. 4

    SQL Serverがサービスで実行されていない理由は何でしょうか?

  5. 5

    不和ボットコードが何も実行されないのはなぜですか?

  6. 6

    この難読化されたCコードはmain()なしで実行すると主張していますが、実際には何をしますか?

  7. 7

    codeigniterhelloworldアプリが何らかの理由で実行されていない

  8. 8

    ロックされているコードの実行は、ロックされていないコードよりも時間がかかるはずです

  9. 9

    Pythonで、正常に実行されている(終了コード0)が結果がない(何も印刷されない)ときにコードを修正するにはどうすればよいですか?

  10. 10

    コードはコンパイルされて正常に実行されますが、期待される出力は「Sub」が印刷されないことです。このコードのエラーは何ですか?

  11. 11

    このJavaScriptコードが実行されないのはなぜですか?

  12. 12

    このjqueryコードが実行されないのはなぜですか?

  13. 13

    Javascriptコードが実行されないのはなぜですか?

  14. 14

    Pythonコードが完全に実行されないのはなぜですか

  15. 15

    QThreadPoolが並列ではなく順番に実行されていますが、コードスレッドが並列で実行されない原因は何ですか?

  16. 16

    私のjsコードがjsfiddleで実行されていない理由を誰かに教えてもらえますか?

  17. 17

    コードがメインスレッドで実行されているのはなぜですか?

  18. 18

    コードがメインスレッドで実行されているのはなぜですか?

  19. 19

    PyCharmで実行されているが、Jupyterでは実行されていないコード

  20. 20

    ajaxが実行したときにphpコードが実行されないのはなぜですか

  21. 21

    コードが正しく実行されないのはなぜですか?声明の場合、これの問題は何ですか?

  22. 22

    このコードがPineScript 4で実行されないのはなぜですか?"宣言されていない識別子"

  23. 23

    ListViewが表示されていない場合、更新コードは実行されますか?

  24. 24

    不和コードが理由もなく複数回実行されている

  25. 25

    catch内のコードが実行されない理由

  26. 26

    条件が満たされていないのに、コードがwhileループを実行しているのはなぜですか?

  27. 27

    jQuery関数が実行されない原因は何ですか?

  28. 28

    onSubmit = "return checkTheForm()"が実行されない原因は何ですか?

  29. 29

    何かがノードで実行されるのにREPLでは実行されないのはなぜですか?

ホットタグ

アーカイブ