java学习---操作符

  java是建立在c++基础上的,所以java中的操作符大多数与c++类似,这里总结一些容易混淆的地方。

  (一)equals和==的区别

     个人理解,equals比较的是对象的实际内容,==比较的是对象的引用,通过例子很容易理解:

      class equal{

       public static void main(String[] args){

         Integer a1=new Integer(7);

         Integer a2=new Integer(7);

         System.out.println(a1==a2);

         System.out.println(a1.equals(a2));

    }

}

   结果会输出:false   true;

    原因在于a1与a2虽然值相同,但a1,a2是不同的引用,所以用==结果为false。而equals比较两者实际值,所以结果为true。

  (二)“别名现象”

       对于基本类型,例如int a=7,a并非一个对象的引用,而是存储了实际的数值。但在为类的对象赋值时,实际操作的是对象的引用,如 Integer a=new Integer(7),此时a不存储数值7,而是代表数值7所在内存的地址,即a指向“7”。


   (三)逻辑操作符

     java中,逻辑操作符只能应用于布尔值;

     “短路”现象,即一旦可以确定表达式的值,就不再计算表达式的剩余部分。

   (四)三元操作符

      boolean-exp?value0:value1

      与if-else类似。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值