Java 在for循环中使用大于号

Java 在for循环中使用大于号,java,for-loop,Java,For Loop,我正在为我的第一堂CS课做加密作业,我正在努力使这段代码正常工作。。。这是我得到的 public static void findE(int phiPQ) { int e = 0; for(e > 2; e < (phiPQ - 1);) { int larger = phiPQ; int smaller = e; int r = 1; r =

我正在为我的第一堂CS课做加密作业,我正在努力使这段代码正常工作。。。这是我得到的

    public static void findE(int phiPQ) {

        int e = 0;

        for(e > 2; e < (phiPQ - 1);) {
            int larger = phiPQ;
            int smaller = e;
            int r = 1;
            r = larger / smaller;
            larger = smaller;
            smaller = r;

            if(larger  == 1) {
            break;
        }
        return; 
     }
public static void findE(int phiPQ){
int e=0;
对于(e>2;e<(phiPQ-1);){
int较大=phiPQ;
int=e;
int r=1;
r=较大/较小;
较大=较小;
较小=r;
如果(较大==1){
打破
}
返回;
}
现在我遇到的问题是,当我尝试在for循环中执行“e>2”时,它不起作用,并且说明赋值运算符无效。赋值说明我应该使用一个从e>2到e<(phiPQ-1)的for循环。如果没有while循环之类的东西,这怎么可能?我也试过了,但无法使return语句正常工作。请帮助!

如何:

for (int e = 0; e > 2 && e < (phiPQ - 1);)
{
    // your code
}
for(int e=0;e>2&&e<(phiPQ-1);)
{
//你的代码
}
那么:

for (int e = 0; e > 2 && e < (phiPQ - 1);)
{
    // your code
}
for(int e=0;e>2&&e<(phiPQ-1);)
{
//你的代码
}
对于循环:

for(int e = 3; e < (phiPQ - 1); e++){

}
for(int e=3;e<(phiPQ-1);e++){
}
对于循环:

for(int e = 3; e < (phiPQ - 1); e++){

}
for(int e=3;e<(phiPQ-1);e++){
}

您收到此错误是因为
for循环
中的第一个表达式用于初始化。第二个表达式就是您的终止条件;当终止条件的计算结果为
false
时,循环将结束。例如

for (int i = 0; i < numIterations; i++) {}
for(inti=0;i
此循环将在正文
numIterations
中迭代次

因此,您需要在第二个表达式中更全面地定义循环的迭代空间,或者通过第一个表达式执行
e
赋值


有关更多信息,请参阅For
For循环
s.

您收到此错误,因为
For循环
中的第一个表达式用于初始化。第二个表达式是您的终止条件;当终止条件的计算结果为
false
时,循环将结束。例如

for (int i = 0; i < numIterations; i++) {}
for(inti=0;i
此循环将在正文
numIterations
中迭代次

因此,您需要在第二个表达式中更全面地定义循环的迭代空间,或者通过第一个表达式执行
e
赋值

有关更多信息,请参阅For
For loop
s.

有人“修复”了下面讨论的一些问题。YMMV


代码中有几个关键问题。语法和/或语义错误的组合可能会相互影响。首先从修复明显的语法错误开始

1.for语法错误。 a的第一个“部分”必须是初始化语句(读作:“赋值”)。它不能是任意表达式。语法为(初始化;终止;增量)语句的
-有关详细信息,请参阅链接

我希望代码应该是:

for(/* At the start, LET e = 2 */
    e = 2 ;
    /* Terminate when this is false. */
    e < (phiPQ - 1) ;
    /* no increment */) ..
要解决此问题,请立即删除
for
语句后面的

3.循环从不改变状态。 终止条件取决于
e
phiPQ
。但是,这些变量永远不会改变,因此循环将永远不会循环或永远不会正常终止

查看环路终止条件和状态进展

4.
break
在for语句之外使用。 虽然#3断言代码从未终止,但可能是包含
break
if
语句(该语句错误地位于循环构造之外,将导致语法错误)用于终止循环。如果是这种情况,则它应该位于循环体内部。

有人“修复”了下面讨论的一些问题。YMMV


代码中有几个关键问题。语法和/或语义错误的组合可能会相互影响。首先从修复明显的语法错误开始

1.for语法错误。 a的第一个“部分”必须是初始化语句(读作:“赋值”)。它不能是任意表达式。语法为(初始化;终止;增量)语句的
-有关详细信息,请参阅链接

我希望代码应该是:

for(/* At the start, LET e = 2 */
    e = 2 ;
    /* Terminate when this is false. */
    e < (phiPQ - 1) ;
    /* no increment */) ..
要解决此问题,请立即删除
for
语句后面的

3.循环从不改变状态。 终止条件取决于
e
phiPQ
。但是,这些变量永远不会改变,因此循环将永远不会循环或永远不会正常终止

查看环路终止条件和状态进展

4.
break
在for语句之外使用。
虽然#3断言代码从未终止,但可能是包含
break
if
语句(该语句错误地位于循环构造之外,将导致语法错误)用于终止循环。如果是这种情况,则它应该位于循环体内部。

for(e>2;e<(phiPQ-1);;在修复原始代码错误时请小心。有些错误对问题非常关键。对于(e>2;e<(phiPQ-1););在修复原始代码错误时请小心。有些错误对问题非常关键。for循环体中的代码不会运行,因为0永远不会超过2。这是可行的,但它表示break语句在循环或开关之外。我尝试移动我的}around和nothing在不破坏返回语句的情况下运行。for循环体中的代码将不会运行,因为0永远不会大于2。这是可行的,但它表示break语句在循环或开关之外。我尝试移动我的},但在不破坏返回状态的情况下,nothing运行