私はこの質問をここで見ましたが、すべてのソリューションは "地図"と呼ばれるもので与えられました。本の学習(Javaプログラミングの第10版の紹介)。また、これは私の解決策であり、私は別のものを見上げるのではなく、自分自身でそれを行い、自分の欠陥を理解したいからです。私のコードで何が間違っているのかわかりません - 別個の番号
ユーザは10個の数字を入力し、プログラムは別個の番号を印刷します。 これは私のコードです:
int[] numbers = new int[10];
int counter = 0;
for (int i = 0; i < 10; i++) {
int check = input.nextInt();
if (!isContains(numbers, check)) ;
numbers[counter] = check;
counter++;
}
for (int i = 0; i < 10; i++) {
System.out.println(numbers[i]);
}
}
public static boolean isContains(int[] array, int key) {
for (int i = 0; i < array.length; i++) {
if (array[i] == key)
return true;
}
return false;
}
}
私のロジックはこれです: は番号が内側にすでにあるかどうかを確認するmethondをisContains-召喚、ユーザからの入力数を、10個の数字を通過し、空の配列を作成します配列でなければ、それを数値[counter]位置に代入します。
私はストレート2時間このEXCに取り組んできていると間違っているかを把握することはできません...私は は-while行わない形でこれを実行しようとした - 何の結果を...
私は与えられた解決策ではなく、私の論理に何が間違っているかを知りたい。 ありがとうございました! if (!isContains(numbers, check)) ;
ラインで