私は整数の配列に各整数が何回見つかったかを出力するプログラムを書いています。私はこれを達成しましたが、出力文字列が重複しています。それは配列で二度見しているのでプリント二回「4が2回発生した」、あなたが見ることができるように配列内の整数を数えます。重複する出力文字列を取り除く方法
>run:
>Please enter integers from 0 to 100:
1
2
3
4
4
5
0
// 1 occurs 1 time //
2 occurs 1 time //
3 occurs 1 time //
4 occurs 2 times //
4 occurs 2 times //
5 occurs 1 time //
BUILD SUCCESSFUL (total time: 14 seconds)
:
この
が出力されます。重複を排除する方法については、ちょっと指示が必要です。何でも大歓迎です。あなたは重複を削除配列からセット要素を作る
https://docs.oracle.com/javase/7/docs/api/java/util/Set.html
:
import java.util.*;
public class WorkSpace3 {
public static void main(String[] args) {
int i = 0;
int count = 0;
int key = 0;
System.out.print("Please enter integers from 0 to 100: ");
int[] myList = new int[100];
Scanner s = new Scanner(System.in);
for (i = 0; i < myList.length; i++)
{
myList[i] = s.nextInt();
if (myList[i] == 0)
break;
}
while (key < myList.length && myList[key] != 0) {
for (i = 0; i < myList.length; i++)
{
{ if (myList[i] == myList[key])
{ count++; } }
}
if (count == 1)
System.out.println(myList[key] + " occurs " + count + " time ");
if (count > 1)
System.out.println(myList[key] + " occurs " + count + " times ");
key++;
count = 0;
}
}
}
を使用して、これを試してくださいあなたはまだMap' 'について学んだことがありますか?もしそうなら、 'Map'を作ります。ここで、キーはあなたの番号で、値はその番号の数です。 –
Andreas
@アンドレアス私はまだ残念ながら地図を学んだことはありませんが、私はそれを理解しようと努力しています。ありがとうございました! – Frank