Java 算术运算符++和--的用法

1、单独使用:放在操作数的前面和后面效果一样。(这种用法是我们比较常见的)

2、参与运算使用:

  • 放在操作数的前面(++a):先自增或自减,然后再参与运算。
  • 放在操作数的后面(a++):先参与运算,再自增或自减。

3、参与运算例子:

public static void main(String[] args){
	int a = 3;
	int b;
	b = a++;
	System.out.println(b);	//输出:3
	System/out.println(a);	//输出:4
}

解释:当++在变量后面的时候,会先将变量中的值取出做赋值操作,然后再自身加一。

public static void main(String[] args){
	int a = 3;
	int b;
	b = ++a;
	System.out.println(b);	//输出:4
	System/out.println(a);	//输出:4
}

解释:当++在变量前面的时候,会先自身加一,然后将结果赋值。

4、需要注意的是:

public static void main(String[] args){
	byte b = 10;
	b++;
	System.out.println(b);	//输出:11
}
public static void main(String[] args){
	byte b = 10;
	b = b + 1;
	System.out.println(b);	//报错:可能损失经度
}

问:b ++ 相当于 b = b+1;,为什么上面可以正常输出,下面的不行呢?

因为bbyte类型在b + 1的时候会自动提升为int类型,然后赋值给byte类型的b的时候一定会损失经度,而b++是运算符,在运算过程中底层做了强制转换处理b = (byte)(b + 1);,所以是可以正常打印输出的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章