10から100までの整数を1次元配列に入力したいのですが、その値が配列内のどこにも存在する場合は、アレイに挿入しますが、5つの一意の番号が追加されるまで、ユーザーに通知して入力を再開します。配列内の値を検索し、それが存在しない場合に格納する
ここに私のコードです。私はそれが正しくないことを知っていますが、私は何をしようとしているのか分かりませんが、単純なforループと数字を取得して配列に格納し、複製を検索する検索方法を使用しています。私のコードで私の問題は、私が 'search'メソッドに送る必要のある変数 'key'として入力した番号を設定することができないということです。
// input an integer between 10 and 100, add to array and print results. if value is already in array, notify user, print array. keep adding to array until 5 unique values have been entered
import java.util.Scanner;
public class ArraySearch {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int[] list = new int[5];
for (int i = 0; i < list.length; i++) {
System.out.println("Enter number: ");
list[i] = input.nextInt();
}
int count = search(list, key);
System.out.println("It has been entered.");
}
public static int search(int[] list, int key) {
int count = 0;
for (int i = 0; i < list.length; i++) {
if (list[i].equals(key)) {
;
}
count++;
}
return (count);
}
}
ありがとう、それは私の頭の上にビットですが、私はこれらを介して動作することができ、そこに答えがあると信じています。とても有難い! – becs
ようこそ。ご不明な点がございましたら、お気軽にお問い合わせください。注意:検索メソッドを使用するサンプルコードの3番目のブロックでは、forループを5つの数字が使用されるまで続けるために、 'i - ;'を使用して 'i' int変数を1ずつリセット/減少させます。数値が入力されていないときに 'i - ;'が使用されなかった場合、forループは5回繰り返した後に停止します(たとえば、5つの数字は正しく入力されませんが、プログラムは見えなくなります) –
私が間違っていたところです。私は今日のコードに取り組んでいたので、助けてくれてありがとうございました。私はそれを落とすのではなく、カウンターを増やし続けました。 – becs