相关疑难解决方法(0)

"x = x ++"之后的x是什么?

执行此操作后会发生什么(窗帘后面)?

int x = 7;
x = x++;
Run Code Online (Sandbox Code Playgroud)

也就是说,当一个变量后期递增并在一个语句中赋值给自己时?我编译并执行了这个.在整个声明之后x仍然是7 .在我的书中,它说增加了!x

java operators post-increment

273
推荐指数
11
解决办法
4万
查看次数


Java中的减量

int result = 5;    
result = result--;  
System.out.println(result);  
Run Code Online (Sandbox Code Playgroud)

为什么结果等于5?

java

5
推荐指数
3
解决办法
649
查看次数

带增量运算符的java循环示例

我有点怀疑,我有一个代码

 int num=0;
 for(int i=0;i<5;i++){
   num=num++;
   System.out.print(num);
 }
Run Code Online (Sandbox Code Playgroud)

为什么输出总是00000

java loops for-loop increment operator-keyword

4
推荐指数
1
解决办法
1104
查看次数

为什么在包含两者的表达式中在postfix之前评估前缀?

根据Oracle运算符优先级规范,执行如下操作:

x-- // Returns x, then subtracts 1 from x.
Run Code Online (Sandbox Code Playgroud)

应优先于:

--x // Subtracts 1 from x, then returns x.
Run Code Online (Sandbox Code Playgroud)

所以,鉴于下面的小片段,为什么:

int x = 5;
int y = --x * 5 + x--;
System.out.println(x+" vs "+y);
Run Code Online (Sandbox Code Playgroud)

打印3 vs 24而不是3 vs 20?

精

假设运算符优先级的给定顺序,可以将代码段的第2行分解为以下伪块(先前评估的值放在方括号中):

  1. 评估 x--

  2. 评估 --x

  3. 评估 [--x] * 5

  4. 评估 [--x * 5] + [x--]

  5. 评估 y = [--x * 5 + x--]

然后将解决如下:

1点之后 returns 5 sets x to 4

2点以后 …

java operator-precedence unary-operator

4
推荐指数
1
解决办法
370
查看次数

Java表达式

我试图在Java 7环境中理解这段代码,

int T = getIntVal();
while (T--> 0) {
 // do stuff here
}
Run Code Online (Sandbox Code Playgroud)

在while循环中不修改T. 有人可以解释这段代码吗?

java expression while-loop java-7

4
推荐指数
1
解决办法
3098
查看次数

为什么在 lambda 中使用 ++i 而不是 i++

我碰巧知道,在下面的表达式中,使用i++将导致无限流,i将始终为 0。我感到困惑是因为我认为i++没有使用返回值,即使如此,它也不应该在i之后中断增量。

IntStream.iterate(0, i-> i<10, i-> ++i).forEach(....)
Run Code Online (Sandbox Code Playgroud)

lambda java-9

4
推荐指数
1
解决办法
234
查看次数

Java增量/减量运算符 - 它们的行为方式,功能是什么?

我开始学习Java已经3天了.我有这个程序,我不理解main方法++和--运算符中的代码.我甚至不知道该怎么称呼它们(这些操作员的名字)任何人都可以解释我的全部内容.

class Example {
    public static void main(String[] args) {
         x=0;
         x++;
         System.out.println(x);
         y=1;
         y--;
         System.out.println(y);
         z=3;
         ++z;
         System.out.println(z);
     }
}
Run Code Online (Sandbox Code Playgroud)

java oop operators

3
推荐指数
1
解决办法
698
查看次数

Java中前后缀“++”运算符的语义

我想知道为什么这段代码会给出输出112
最后一位数字2是如何创建的?

public static void main(String[] args) {
    int i = 0;
    System.out.print(++i);
    System.out.print(i++);
    System.out.print(i);
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况?

java pre-increment post-increment

2
推荐指数
1
解决办法
835
查看次数

不确定for循环迭代?

所以我刚开始用Java编程,我只是很难理解为什么会这样

for (int i = 0, j=0; i <10; i++) {
    System.out.println(j += j++);
}
Run Code Online (Sandbox Code Playgroud)

打印出10次?

java for-loop

2
推荐指数
1
解决办法
83
查看次数