在线java编译显示如下错误


static void isPrime (int n) 
{      int f;
for(int i=2;i<=Math.sqrt(n);i++)
{
if(n % i == 0)
{
f = 1;
}
}
if(n == 1 || f == 1)
{
System.out.println("No"); 
}
else
System.out.println("Yes");
}

编译错误

Compilation Error:

java:42:错误:变量f可能尚未初始化如果(n=1||f==1(^1个错误

在.NET中,整数和其他值类型始终具有默认值。因此,在C#中,变量"f"的默认整数值为0。

我想Java是不同的。。。要消除这个编译错误,只需为f指定一个值即可。

例如:

int f = 0;

只需将其初始化为零。

static void isPrime (int n) {      
int f=0;
for(int i=2;i<=Math.sqrt(n);i++){
if(n % i == 0){
f = 1;
}
}
if(n == 1 || f == 1){
System.out.println("No"); 
}else
System.out.println("Yes");
}

相关内容

最新更新