当前位置:天才代写 > tutorial > JAVA 教程 > Java编程那些事儿24—赋值运算符

Java编程那些事儿24—赋值运算符

2017-11-12 08:00 星期日 所属: JAVA 教程 浏览:313

4.4 赋值运算符

赋值运算符是指为变量或常量指定命值的标记。最根基的赋值运算符是“=”。

由于Java语言是强范例的语言,所以赋值时要求范例必需匹配,假如范例不匹配时需要能自动转换为对应的范例,不然将报语法错误。示例代码:

byte b = 12;   //范例匹配,直接赋值
int n = 10;    //范例匹配,直接赋值
double d = 100;//范例不匹配,系统首先自动将100转换成100.0,然后赋值
char c = -100;  //范例不匹配,无法自动转换,语法错误

需要强调的是,只能为变量和常量赋值,不能为运算式赋值,譬喻:

int a = 10;
int b = 2;
a + b = 100;//不能为运算式a + b赋值,语法错误

常量只能赋值一次,不然也将呈现语法错误,譬喻:

final int N = 10;
N = 20;//常量只能赋值一次,语法错误

在根基的赋值运算符基本上,可以组合算术运算符,以及后续将进修的位运算符,从而构成复合赋值运算符。赋值运算符和算术运算符构成的复合赋值运算符如下表4-4所示。

表4-4 复合赋值运算符

标记 名称 成果说明
+= 加等 把变量加上右侧的值然后再赋值给自身
-= 减等 把变量减去右侧的值然后再赋值给自身
*= 乘等 把变量乘以右侧的值然后再赋值给自身
/= 除等 把变量除以右侧的值然后再赋值给自身
%= 取余等 把变量和右侧的值取余然后再赋值给自身

实际利用示例:

int n = 2;
n += 3;

说明:计较以前n的值是2,也就是把n + 3的值,也就是5再赋值给n,颠末运算今后n的值为5,因为该代码只执行一次,所以不会导致轮回。

依次类推,其它的复合赋值运算符也是这样:

int n = 10;
n -= 2;//则n的值是8
n *= 3;//因为n的初值是8,则n运算后的功效是24
n /= 5;//因为n的初值是24,则n运算后的值是4

留意:复合赋值运算不会改变功效的范例,所以在有些时候运算在逻辑上会呈现错误,可是切合计较中数值的表述。譬喻:

byte b = 127;
b += 1;
System.out.println(b);

按照前面的先容,byte范例的取值区间是-128~127,由于复合赋值运算符不改变功效的范例,则导致功效是-128,而不是128。原因如下:

lbyte范例值127的呆板数是01111111,0暗示正数,后续的数值暗示127

l该数值加1后,获得的数值是10000000,二进制加法

l而10000000在byte范例中刚好是-128的呆板数暗示形式

其它范例的切合运算符也大概存在雷同的环境,利用时需要留意。

文章来历:http://blog.csdn.net/Mailbomb/archive/2008/05/23/2473815.aspx

 

    关键字:

天才代写-代写联系方式