1. ホーム
  2. その他

[解決済み】Required: 変数が見つかりました。値

2022-01-03 01:42:46

質問内容

public static int biggestArrayGap(int []a, int n)
{
int biggestGap = Math.abs(a[1]-a[0]);
    for (int i=1; i<n-1; i++)
{
    if (Math.abs(a[i]-a[i-1]) > biggestGap)    
        Math.abs(a[i]-a[i-1]) = biggestGap;
}
    return biggestGap;
}

なぜか、if文の2行目が予期せぬ型として返されます- required: variable found: value. を試してみましたが、明らかにうまくいきません。何かヒントがありますか?

どうすればいいですか?

assign文のオペランドを入れ替えました。

これを切り替える

required: variable found: value

をこのように

Math.abs(a[i]-a[i-1]) = biggestGap;

biggestGap = Math.abs(a[i]-a[i-1]); は単なる int 値を返します (変数の参照などはありません)。つまり、ある値に新しい値を代入しようとしているわけです。それは不可能です。新しい値を 変数 .