For loop 如何停止循环过度加载变量

For loop 如何停止循环过度加载变量,for-loop,overwrite,For Loop,Overwrite,您好,谢谢您的帮助,我应该做一个程序,执行文本分析,看看哪个词是最常用的。使用数组存储单个值是可行的,但如何打印它,使其显示在字母旁边,而不是仅打印数组中的所有数字?hashmap是所有字母的存储位置,以及它们的输入次数 float letter = 0; float sum = 0; for(int i = 0; i < Freq.length; i++){ letter = Hmap.get(Freq[i]); sum[i] = letter / Freq.lengt

您好,谢谢您的帮助,我应该做一个程序,执行文本分析,看看哪个词是最常用的。使用数组存储单个值是可行的,但如何打印它,使其显示在字母旁边,而不是仅打印数组中的所有数字?hashmap是所有字母的存储位置,以及它们的输入次数

float letter = 0;
float sum = 0;

for(int i = 0; i < Freq.length; i++){
    letter = Hmap.get(Freq[i]);
    sum[i] = letter / Freq.length; 
}

虽然,我不确定我是否理解你的问题。sum应该包含什么?

了解您使用的是什么语言会有帮助,但从格式来看,我猜是Java。您需要将sum设置为一个数组,例如float[]sum=newfloat[Freq.length],然后在循环中执行sum[i]=letter/Freq.length;然后,您将能够在和数组的每个成员中看到每个除法结果。你说使用数组不起作用。我想你可能需要更详细地描述一下你的上下文,例如什么是Hmap,它是如何工作的,例如异常,或者只是意外的输出。谢谢你的帮助,我应该制作一个程序来执行文本分析,看看哪个词是最常用的。按照你上面所说的做是可行的,但是我怎么能把它打印出来,让它出现在字母旁边,而不是只打印出所有的数字呢?hashmap是字母存储的地方,以及它们被输入的次数。你需要显示更多的代码——Freq和Hmap的定义——否则很难知道字母和计数的实际存放位置。Freq是字母或单词的列表,还是频率的列表?我想这是一个字母/单词的列表。如果是-打印出类似System.out.printlnFreq[i]++sum[i];注:如果这是它的工作原理,最好使用更具描述性的变量名,例如key_list而不是Freq,relative_frequency而不是sumIts,它应该保持频率除以输入的频率总数。如果你不介意的话,我可以pm你整个代码?那么频率之和除以总频率,比如平均值?@APengune是的,它应该执行文本分析,看看哪个词是最常用的,它加起来应该是1
float[] sum = new float[Freq.length];

for(int i = 0; i < Freq.length; i++){ 
    sum[i] = Hmap.get(Freq[i]) / Freq.length; 
}