ata*_*tus 0 java java.util.scanner
尝试编译
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int x = in.nextInt()++;
}
}
Run Code Online (Sandbox Code Playgroud)
给出错误java: unexpected type; required: variable; found: value
。
使用+ 1
而不是++
解决此错误。
我知道区别是“将变量的值加1”和“将值增加1”。
但是我从没碰到能带来改变的代码。有人可以解释吗?
如果您这样做:
in.nextInt()++
Run Code Online (Sandbox Code Playgroud)
等效于:
in.nextInt() = in.nextInt() + 1
Run Code Online (Sandbox Code Playgroud)
但这是不可能的。您不能将表达式的结果分配给方法调用,它必须是变量。
归档时间: |
|
查看次数: |
74 次 |
最近记录: |