日期:2014-05-20  浏览次数:20663 次

求高手帮我看一下这段代码哪里写错了。。
import java.util.Scanner;

“if(zhishu(a1)&&zhishu(a-a1))”这里会报错,我是实在想不通,求大神指导
public class Gedebahe {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
int a=sc.nextInt();
  int a1 ;
  for(a1=2;a<a/2;a1++){
  if(zhishu(a1)&&zhishu(a-a1)){
  System.out.println(a1);
  }
  }
}
  public int zhishu(int a){
for(int i=1;i<a/2;i++){
if(a%i==0)return 0;
}
return a;
  }
}

------解决方案--------------------
public int zhishu(int a){
for(int i=1;i<a/2;i++){
if(a%i==0)return 0; 
}
return a;
}
}
这个函数的返回值不是boolean类型,肯定保错,java的必须是boolean 而不是能
是其他类型
------解决方案--------------------
楼上正解