增值

时间:2018-11-25 04:00:30

标签: java netbeans

我有一个问题,如何使值递增,如b = 0然后下一个b = 1然后b = 3

我的代码正在打印111,但是我想要的输出是123,我也尝试过b = b + 1;但打印输出为111

for(int x=0;x<3;x++){
    int b=0;
    b++;
    b=b+b++;
    System.out.print(b);
}

2 个答案:

答案 0 :(得分:0)

在循环之前声明b。循环中的增量。喜欢,

int b = 1;
for (int x = 0; x < 3; x++) {
    System.out.print(b++);
}

int b = 0;
for (int x = 0; x < 3; x++) {
    System.out.print(++b);
}

两个输出均为“ 123”。您当前的代码声明初始化b作为循环主体中的第一条语句,并且等效于int b = 1;-因此,您打印1三次。可以将b的生存期限制为循环,但是您可以在与x相同的作用域中声明它。喜欢,

for (int x = 0, b = 0; x < 3; x++) {
    System.out.print(++b);
}

或完全消除b并使用x。喜欢,

for (int x = 1; x <= 3; x++) {
    System.out.print(x);
}

答案 1 :(得分:0)

在您的代码中,您需要在每次迭代中设置b = 0

因此,在所有3次迭代中,变量b的值都相同。

将其带到循环之外以获得所需的结果。

示例:

int b=1; // initialize to 1
for(int i=0;i<3;i++){
   System.out.print(b); // print the value.
   b = b + 1; // increment the value by 1
}

此代码与:

int b=1; 
for(int i=0;i<3;i++){
   System.out.print(b++); 
}