Java笔记整理 —— 运算符使用细节

本文详细介绍了Java中的运算符使用,包括整数除法的细节,取余的本质以及前置++和后置++的区别。此外,还讨论了三元运算符的执行顺序和精度提升规则,并通过实例解析了其工作原理。最后,探讨了三元运算符中++和--的特殊行为,以及如何影响表达式的结果。
摘要由CSDN通过智能技术生成

运算符使用细节

     1.double除法的细节

public static void main(String[] args){
        double a = 10 / 4;
        double b = 10.0 / 4;
        System.out.println(a);
        System.out.println(b);   
	}

  整数相除只会保留整数(无论是变量还是常量都一样),然后再赋给double,因此a为2。10.0为double类型,double/int 或者 double/double 都会保留小数,因此b为2.5。

   2.取余的本质

	public static void main(String[] args){
        int a = -10 % 3;
        int b = 10 % -3;
        System.out.println(a);
        System.out.println(b);   
	}

 取余的本质是一个公式——  a % b = a - a / b * b

  3.前置++和后置++

     用临时变量的规则进行解释。

  前置++:先自增,再进行相关操作——对于 b = a++,(1) a = a + 1; (2) temp = a; (3) b = temp;

  后置++:先进行相关操作,后自增——对于 b = a++,(1) temp = a; (2) a = a + 1; (3) b = temp;

public static void main(String[] args){
        int a = 10;
        int b = a++;//先把a赋给b,a再加一
        int c = 10;
        int d = ++c;//c先加一,再把c赋给d
        System.out.println("a="+a);
        System.out.println("b="+b);  
        System.out.println("c="+c);   
        System.out.println("d="+d);   
	}

int i = 1;
i = i++;

  根据规则进行判断—— (1) temp = i;  (2) i = i +1;  (3) i = temp;  因此最终i仍然为1。

int i = 1;
i = ++i;

  根据规则进行判断—— (1) i = i + 1;  (2) temp = i;  (3) i = temp; 因此最终i为2。

  三元运算符里的++和--:

	    int a = 10;
	    int b = 99;
	    int result = a < b ? a++ : b--;
	    System.out.println("result=" + result);
	    System.out.println("a=" + a);
	    System.out.println("b=" + b);

 a<b为真,返回a++,因为是后置++,因此返回a后,a再加一,对b不进行操作。

三元运算符

三元运算符是一个整体,在执行时会把所数据类型的精度上升到最大的那个(在常用类中的例子)

Object obj1 = true?new Integer(1):new Double(2.0);
System.out.println(obj1);  //最大精度为double,输出1.0
Object obj1 = true?new Integer(1):new Integer(2);
System.out.println(obj1); // 最大精度为int,输出1

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值