java - 我怎样才能让我的 PrimeNumber 生成器工作?

标签 java return generator

我尝试编写一个素数生成器。 calcall() 方法应该返回素数 (2,3,5,7...)。不幸的是,我收到错误,该方法不返回整数,我不明白。这是我的代码:

package primenumber;

public class primecalc {

    public static int calcall(int a) {            //actual generator
        int konstante = a;                        //is this number a prime num?     
        int divisor = a-1;                        //divisor
        int var1 = 0;                             //variable = 0
        while(divisor>1) {                        
            int quotient = konstante%divisor;     //calc modulo
            if(quotient == 0) {                   //if modulo==0 switch var1 to 
                var1++;                           //1 -> no primenumber                           
                break;                            //stop calculating
            } else {                              //else keep calculculating
                divisor--;                        //until divisor <= 1 
            }
        }
        if(var1==0) {                             //if var1 still 0; 
            return konstante;                     //is a primnumber -> 
        }                                         //return konstante                            
    }

    public static void main(String[] args) {      //main function
        int number = 3;                           //start with 3
        while(True) {                             //(i'll add 2 manually)
            System.out.println(calcall(number));  //print the prime number
            number++;                             //increase number by one
        }               
    }    
}

错误是:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    This method must return a result of type int    
    at primenumber/primenumber.primecalc.calcall(primecalc.java:5)
    at primenumber/primenumber.primecalc.main(primecalc.java:28)

出了什么问题?

最佳答案

编译器将忽略您发布的代码上的灰线。

使用 /**/ 使得编译器将它们之间的所有内容视为注释。这就是为什么这些线是灰色的。如果您想在与代码相同的行上进行注释,我建议您使用 //

此外,通常的做法是仅使用多行注释来描述函数并将它们放置在函数标题的正上方。任何其他注释都应该简短、简洁并描述功能。好的变量名和写得好的代码应该可以完成大部分的解释,当很难理解正在发生的事情时,应该使用单行注释。

干杯

关于java - 我怎样才能让我的 PrimeNumber 生成器工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52457370/

相关文章:

java - java中的大 float 和 double 打印/保留不正确。此行为是由于有效位数所致吗?

Java 'reduceLeft' 签名/下界类型参数

java - 为什么 return 语句后不允许有额外的分号,而其他语句允许使用分号?

python - 检查返回值是否为 None

python - 嵌套的 python 生成器有多快?

java - 在 java.util.Date 类型中插入特殊字符

java - 在 Java Web 应用程序中记录/监控用户 Activity

c# - 在平面 map 上随机生成方 block

javascript - 从 JavaScript 函数返回值

python - 将 np.array 索引传递给函数