gpt4 book ai didi

java - 数组中的重复项不得打印多次

转载 作者:行者123 更新时间:2023-12-01 14:47:16 25 4
gpt4 key购买 nike

下面的代码打印文件中的所有单词(将其放入第一个数组)及其旁边的数字(第二个数组)。如果单词有重复项,它会找到数组中的单词(第一个单词),并将 1 添加到数字数组中,但它仍然打印出数组中的重复项。我只想要旁边带有正确数字的单词的第一个实例来说明 in 已在数组中出现了多少次。我的问题确实是我不想打印重复的内容。 (请不要使用数组列表)。

while ((in.hasNext())) {

l = in.next() ;

for(int i = 0; i< Wrd.length-1;i++){
if (l.equals(Wrd[i])){
num[i] = num[i] +1;
}

}

Wrd[n]=l;
num[n] = num;

n++;

}

最佳答案

听起来您无法使用SetMap等 - 如果您可以,那么这里的其他建议更容易实现我的目标会建议:-)

如果由于某种原因你不能,那么这样如何:

// capture all the words first into an array
// the array below is for test purposes
String[] words = {"1", "2", "3", "5", "1", "1", "3", "4", "1", "5", "7", "0"};

Arrays.sort(words); // sort the array - this is vital or the rest wont work
String last = words[0];
int count = 0;
for (String word : words) {
if (word.equals(last)) {
count++;
} else {
System.out.println(last + "=>" + count);

count = 1;
last = word;
}
}
System.out.println(last + "=>" + count);

输出将是:

0=>1
1=>4
2=>1
3=>2
4=>1
5=>2
7=>1

关于java - 数组中的重复项不得打印多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15298951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com