配列の特定の変数値が最初に発生したときに、その変数を最初に発生したときにその変数に変更し、値を-1に変更するよりも発生しません。 たとえば、配列の最初に32が表示されるので、1が出力されますが、100は配列に表示されないので、-1を出力しますが、ループ内に2番目のif文を作成すると、変数は-1になりますが、それを見つけるための元の値が表示されます。申し訳ありませんが十分に説明していない場合。声明Java変数の値が配列の値と等しいかどうかをテストします。-1
public static int occurrence(int[] a) {
Scanner scnr = new Scanner(System.in);
int occurrence = scnr.nextInt();
for (int i = 0; i < a.length; i++)
if (a[i] == occurrence)
occurrence = i + 1;
return occurrence;
次のとおりです。サンプルデータと予想される出力を表示してください。 – OldProgrammer
データはちょうど異なる値ですが、スキャナで最初に入力した値が配列に表示されたときのインデックスです。したがって、2が最初に現れた時よりもスキャナに置かれた値であった場合、最初に5番目のインデックスとして出現した場合は5を出力しますが、出現しなかった場合は-1を出力したい場合は、2番目のif文を使用すると想定します。うまくいけば助けてくれます。データを与えないと申し訳ありませんが、数字がたくさんあります。それがなければそれが理解できることを願っています。 – blazefire