Java的常用操作符

操作符用于接受一个或多个参数,并生成一个新的值。加号和一元的正号(+)、减号和一元的负号(一)、乘号(*)、除号(/)以及赋值号(=)的用法和大多数编程语言都类似。

操作符作用于操作数,生成一个新值。另外,有些操作符可能会改变操作数自身的值,这被称为“副作用’。那些能改变其操作数的操作符,最普遍的用途就是用来产生副作用;但要记住,使用此类操作符生成的值,与使用没有副作用的操作符生成的值,没有什么区别。几乎是所有的操作符都只能操作“基本类型”。,但“=”、“==“和”!=“能操作所有对象。String支持”+“和”+=“。

优先级

一个表达式存在多个操作符的时候,计算时就是按照操作符的优先级,先乘除后加减。最简便的方法就是利用括号()控制操作符的顺序。

而String类型的可以用+来连接每个String。

赋值

普通赋值:赋值使用操作符“=”,把右边的值复制给左边,左值必须是明确的变量。比如: a=8;

对象赋值:在为对象‘赋值”的时候,我们真正操作的是对对象的引用。倘若“将一个对象赋值给另一个对象”,实阮是将“引用”从一个地方复制到另一个地方。这意味着假若对对象使用C=B,那么C和B都指向原本只有B指向的那个对象。下面这个例子将向大家阐示这一点。

class Breakyizhan {
      int Y;
}


 public static void main(String[] args){  
        Breakyizhan c1=new Breakyizhan();    
        Breakyizhan c2=new Breakyizhan();  
        c1.Y =2;
        c2.Y = 80; 
        System.out.println("1: c1.Y: "+c1.Y + ", c2.Y:"+c2.Y);  
        //对象c1和c2都指向了c2的对象;要记得c1和c2只是一个引用;
        c1=c2;
        System.out.println("2: c1.Y: "+c1.Y + ", c2.Y:"+c2.Y);  
        //对象c1的引用被覆盖之后,就是丢失了,也就是c1之前所指的对象被“垃圾回收”了,c1现在和c2一样指的是同一个对象
         c1.Y = 33;
        System.out.println("3: c1.Y: "+c1.Y + ", c2.Y:"+c2.Y);  
          
    }  

结果是:

1: c1.Y: 2 , c2.Y:80
2: c1.Y: 80 , c2.Y:80
3. c1.Y: 33 , c2.Y:33

这种Java操作对象的方法叫做“别名现象”,为了避免这个现象,可以这么写: c1.Y=c2.Y;

更多内容请访问: Java的全部操作符解析|Break易站

 

posted on 2017-09-02 23:41  MrAit  阅读(282)  评论(0编辑  收藏  举报

导航