赋值运算符 +=,-=,*=,/=,%=中的细节问题

1.赋值运算符 +=,-=,*=,/=,%=中的细节问题

前提:int a = 10;
需求:对变量 a 进行 + 2 的操作。

		int a = 10;
		// 需求:实现 变量 a + 2 的方式有几种呢?  区别又是什么?
		// 方式一
		//a = a + 2;
		//System.out.println("a : " + a );	// 12 

		// 方式二
		a += 2;
		System.out.println("a : " + a );	// 12 

实现上述需求的方式有 2 种。那么区别是什么呢?

		short a = 10;
		// 方式一:
		// a = a + 2;   编译失败。因为 a + 2 自动提升为 int类型,赋值给short类型是需要强制类型转换的
		
		// a  = (short)(a + 2);
		// System.out.println("a : " + a );	// 12

		// 方式二:
		a += 2;
		System.out.println("a : " + a );	// 12 
		// 区别是: += -= *= /= %= 不会改变变量本身的数据类型

区别是:
+= -= *= /= %= 不会改变变量本身的数据类型。

上一篇:编写程序,显示char,short,int,long的无符号最大取值


下一篇:matlab学习其一