编程语言
首页 > 编程语言> > Java循环和增量问题

Java循环和增量问题

作者:互联网

谁能告诉我程序中的问题是什么?

String a[],b[];
int c[] = new int[b.length];

for (int j = 0; j < a.length; j++) {
    for (int k = 0; k < b.length; k++) {
        if (b[k].equals(a[j])) {
            c[k]++;
        } else {
            c[k] = 0;
        }
    }
}

我在HashMap中存储了数千个单词.现在,我想检查每个文件中allWords中一个单词出现了多少次.

您能指出我程序中的错误,还是可以让我知道如何做?

解决方法:

您可以在阅读文件并存储在地图上时数字.
假设文件中的最后一个单词是“ -1”,并且一行中只有一个单词,即使该单词是“生日快乐”,我也会执行以下操作:

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

public class StackOverflow {

@SuppressWarnings("unchecked")
public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    Map<String, Integer> countedWords = new HashMap<String, Integer>();
    int numberOfWords = 0;
    String word = "";
    while (true) {
        word = scanner.nextLine();
        if (word.equalsIgnoreCase("-1")) {
            break;
        }
        if (countedWords.containsKey(word)) {
            numberOfWords = countedWords.get(word);
            countedWords.put(word, ++numberOfWords);
        } else {
            countedWords.put(word, 1);
        }
    }
    Iterator it = countedWords.entrySet().iterator();
    while (it.hasNext()) {
        Map.Entry pairs = (Map.Entry)it.next();
        System.out.println(pairs.getKey() + " = " + pairs.getValue());
    }
}
}

标签:data-structures,loops,java
来源: https://codeday.me/bug/20191208/2094739.html