运算符和赋值

Java运算符

java不是c++运算符不能重载。如果被用与String,+会把左边的操作数和右边的操作数相链接

1、赋值运算符:

常量整数永远隐含是int

byte b=27 //编译器自动把这个常量值缩小为一个字节
//但是:
byte b=3;
byte c=8;
byte d=b+c; //false 应改为 byte c=(byte)b+c
//为变量赋一个改不了的大常量会产生问题。
byte a=128; //false 改: byte a=(byte)128;
byte b=3;b+=7;//改为 byte b=3; b=(byte)(b+7);
  1. 原始变量:把一个原始变量赋给另一个原始变量时,右边变量的内容被复制。位拷贝的复制。
  2. 为引用变量赋值:可以为所声明类型的子类赋值,但是不能为所声明类型的父类赋值。
  3. 把一个引用变量赋给另一个引用变量:一个变量的位模式的内容被复制到另一个变量(指向同一个实例)

对于字符串,每当我们使用+运算符链接两个字符串时,vm都要创建一个崭新的String。

2、比较运算符:

>:>=:<:<= 比较整数,浮点数,字符的任意组合。

3、instanceof

运算符只被用于对象的引用变量,可以使用它检查变量是否是某种类型。

数组是对象。Foo[]没有具体引用,Foo[1]是具体的引用。

4、等于运算符:==是兼容类型的比较(=的错误无法编译,测试引用变量是否指向同一个对象)

==等于 !=不等

数字:字符:boolean:对象引用变量

当浮点数除以0时和余数%0,他们返回正无线大或负无线大,除了当被除数也是0时=NaN

整数除0和余数%0,导致ArithmeticExcetpion

5、++,--运算符:final变量不能修改不能与++一起使用

6、移位运算符:>>   <<  >>> 移动的位数与大于32时,与32求 mod

7、位运算符:&|^异或

8、位反运算符~

9、三目运算符,可以在一条语句内嵌套条件运算符

10、原始转换:把大字节的原始类型转换为小字节的原始类型。要显式转化(强行转换)

11、&&和||它不再无意义的计算上浪费时间,&和|

12、变量传递:

  • 传值:被调用方法不能修改调用者的变量。
  • 传递对象引用变量:传递的是引用的位拷贝,指向同一个对象
  • 注意:变量的使用范围,生命周期
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值