“黑马程序员”Java赋值运算符

原创 2015年07月10日 09:46:13

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

          今天学习的是关于Java的基本运算符,这里我遇到的问题,就是关于Java中的赋值运算符:+=-=*=/=的问题。

       众所周知,赋值运算符的在所有Java运算符中的优先级是最低的。所以我们遇到某些情况,比如:

       int a = 5;

       a+=5*++a/5 + 2;

       时我们往往会考虑,先对右边进行运算,此时++a所以a6。然后右边总和为8,此时在进行a+=8;的运算,所以a=a+8;得出a=6+8;可是实际我们编程运行的情况却是a13。这是怎么一回事呢?其实这是概念的理解错误,因为我们遇到这种题我们往往会把上面运算式改为:

       a = a + (5*++a/5+2)来运算的,而其实际的定义确是:实际使用示例:

       int n = 2;

       n += 3;

说明:计算以前的n的值是2,也就是把n + 3的值,也就是5再赋值给n,经过运算以后值为5

这里关于复合赋值运算符还应注意的一点是:

复合赋值运算不会改变结果的类型,所以在有些时候运算在逻辑上会出现错误,但是符合计算中数值的表述。例如:

byte b = 127

b += 1

System.out.printlnb);

根据前面的介绍,byte类型的取值区间是-128~127,由于复合赋值运算符不改变结果的类型,则导致结果是-128,而不是128.原因如下:

byte类型值127的机器数是011111110表示正数,后续的数值表示127

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

10000000byte类型中恰好是-128的机器数表示形式其它类型的符合运算符也可能存在类似的情况,使用时需要注意。


黑马程序员_java学习第二课中的赋值运算符疑惑总结

------- android培训、java培训、期待与您交流! ---------- 今天在复习课程的时候,发现了一些不明白的地方: class Demo { public stat...

黑马程序员_JAVA语言规范运算符,条件语句,循环语句,函数规则

------- android培训、java培训、期待与您交流! ---------- Java作为一门强大的计算机语言,是一门人与计算机交流的语言。 人机交流的语言有很多种比如:C#,C,C++等。...

黑马程序员——Java基础语法 之运算符

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- Java基础语法之运算符 运算符分类:算数运算符、赋值运算符、比较运算符、逻辑运算符...

黑马程序员--Java基础语法之关键字、常量、变量、运算符

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

黑马程序员----java的基本语法 变量 运算符 选择结构 循环结构 方法 数组

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 标识符  1.在程序中自定义的一些名称。  2.由26个英文字母大小写,数字:0—9,符号:_$...

黑马程序员——Java语言基础——关键字、表示符、常量、变量及数据的类型、运算符

---------------------------- android培训、java培训、期待与您交流! --------------------------------- Java是强类型的...

黑马程序员_Java常量、变量、数据类型和运算符的学习笔记

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 我是从C++转过来学习Java的,c++中的语法和Java语法有些许的不同,下面就是我学习Jav...

黑马程序员——java基础之那些让人纠结的运算符

------- android培训、java培训、期待与您交流! ---------- 在申请进入黑马程序员考试的时候,碰到一个题,引发了我一系列对java运算符的思考。 一、题目:    1、...

黑马程序员——Java基础(三)之运算符、键盘录入、流程控制语句

运算符 概述:就是对常量和变量进行操作的符号。 分类:算数运算符,赋值运算符,比较运算符,逻辑运算符,位运算符,三木运算符。 算数运算符:...

黑马程序员——JAVA基础----语法(一)-- 关键字、常量、变量、运算符

-----------android培训、java培训、java学习型技术博客、期待与您交流!------------ 语法(一) 01_Java语言基础(关键字的概述和使用) ...
  • Du_jing
  • Du_jing
  • 2015年11月05日 17:00
  • 186
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:“黑马程序员”Java赋值运算符
举报原因:
原因补充:

(最多只允许输入30个字)