java——哪个优先级更高,+;或-
考虑到这一表述:java——哪个优先级更高,+;或-,java,operator-keyword,operator-precedence,Java,Operator Keyword,Operator Precedence,考虑到这一表述: x1 = ++x - x++ + --x 如果输入x的值为5 这种表达式在java中的输出是什么?为什么?在+或-中没有更高的优先级 没有括号,它们只是按顺序执行的,让我们考虑一下你的例子: public class Test { public static void main(String[] args) { int x = 5; int x1 = ++x - x++ + --x; System.out.printl
x1 = ++x - x++ + --x
如果输入x的值为5
这种表达式在java中的输出是什么?为什么?在+或-中没有更高的优先级
没有括号,它们只是按顺序执行的,让我们考虑一下你的例子:
public class Test {
public static void main(String[] args) {
int x = 5;
int x1 = ++x - x++ + --x;
System.out.println(x1);
}
}
将打印6
有四种递增/递减前/后操作:
将在求值之前递增(在表达式中使用其值之前)++x
将在求值之前递减--x
将在计算后递增(在表达式中使用其值后)x++
将在评估后执行MNTx--
++x
”在表达式中使用其值之前,x将递增1,因此现在它是:
6 -
2) “-x++
”在表达式中使用x的值后,x将递增1,因此:
6 - 6 , but now x=7
3) “+--x
”在使用其值之前,x将递减1,因此它最终转换为:
x1 = 6 - 6 + 6;
这将按以下方式执行:
x1 = 0 + 6;
x1 = 6;
显然,在
+
或-
中没有更高的优先级,因为它只是按照出现的顺序减去和添加。x1
将是6
+和-
具有相同的优先级,但是++
前缀/后缀运算符的优先级高于++
和-
。看见您还必须记住,表达式是从左到右求值的。请在此处尝试,并告知我们: