java 请下面一段代码 老是提示缺少返回语句

来源:百度知道 编辑:UC知道 时间:2024/07/02 08:22:00
public class Sushu
{
boolean isSushou(int i)
{
for(int j=2;j<i;j++)

if(i%j==0)

return false;
else
return true;
}
public static void main(String args[])
{
Sushu s=new Sushu();

for(int i=100;i<200;i++)
if(s.isSushou(i)==true)
System.out.print(i);
}
}

你的目的是什么呀,是打印单数?
如果是的话我给你改进一下:

public class Sushu {

int j = 2;

boolean isSushou(int i) {
if(i%j == 0) {
return false;
}

return true;

}

public static void main(String args[]) {
Sushu s = new Sushu();

for (int i = 100; i < 200; i++)
if (s.isSushou(i))
System.out.print(i);
}
}

if 本来接收的就是 boolean 不用if(s.isSushou(i)==true)。
还有如果 else 只有一种可能的话就好就把 else 省略,这样可以降低代码的依赖性。

public class Sushu
{
boolean isSushou(int i) {
for(int j=2;j<i;j++) {
if(i%j==0) {
return false;
}else {
return true;
}
}
}
}
public static void main(String args[]) {
Sushu s=new Sushu();
for(int i=100;i<200;i++) {
if(s.isSushou(i)==true) {
System.out.print(i);
}
}
}

可以这样改一下:

public clas