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 语句中的第二行以意外类型返回:required:variablefound:value。我尝试过==,但显然行不通。有什么见解吗?
您在赋值语句中交换了操作数。
切换这个
Math.abs(a[i]-a[i-1]) = biggestGap;
to this
biggestGap = Math.abs(a[i]-a[i-1]);
Math.abs(a[i]-a[i-1])
仅返回一个 int 值(无变量引用或类似值)。所以你试图为一个值分配一个新值。这是不可能的。您只需将新值分配给variable.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)