2015-09-19 147 views
3

我是新来的Java,并在相当修复。如果这听起来像一个非常简单的问题,请原谅我。我如何摆脱这个循环?

这是一个质数检查的问题,我必须返回1,如果是0,如果它是不是素数。我在这里有一个简单的代码,但我如何摆脱循环?我总是得到错误'断开外部开关或循环'。我的休息不在循环中吗?

public class PrimeNumberChecker { 
    public static int isPrime(int num){ 
     int bin = 1; 
     int i; 
     for (i=2; i<num; i++);{ 
      if (num%i==0){ 
       bin=0; 
       break; 
      } 
     } 
     return bin; 
    } 
} 
+1

使用像Eclipse或想法有些IDE,他们会告诉你象这样的错误immidiatly –

回答

13

删除当您终止与循环被终止您for循环

for (i=2; i<num; i++);{ 
        ^
2

分号;,它equivalent

if (num%i==0){ 
    bin=0; 
    break; 
} 

或者在for循环换句话说你没有身体。和break语句用于终止循环,但您在循环之外结束使用它。

只需重写for循环为:

for (i=2; i<num; i++){ 
     if (num%i==0){ 
      bin=0; 
      break; 
     } 
    }