第三章 操作符

  1. 自增自减运算,这个位置相当容易错。不过其实也很简单,前向自增自减如(++i)是先做运算,在使用i的值;后向自增自减则是在使用完i的当前值在对i进行运算。
  2. ==和equals()的区别是非常重要的。
    •  ==比较的是引用
    • equals()方法比较的是实际内容,但是要注意,equals()方法默认是比较引用的(即从Object类继承而来的),只有重写了equals()方法才可以比较对象实际内容。
  3. 逻辑操作符&&与II有一个短路的问题,如(表达式一)&&(表达式二),一旦明确了整个式子的值就不会计算后面的表达式,即“表达式一”值为false整个表达式就为false,便不会再计算“表达式二”了。
  4. 在进行运算时,基本类型的数据会进行类型提升,比int小的类型,如char、byte、short都会提升到int。
  5. 类型转换的时候,窄转换要进行强制类型转换,因为窄转换会丢失信息。
  6. round()方法“四舍五入”,其实非也,它的实现是Math.floor(x+0.5);floor地板就是向下取整的方法。round(-1.7)的结果是-1,而不是-2.
posted @ 2019-08-18 16:19  卑微芒果  Views(113)  Comments(0Edit  收藏  举报