首页 > 编程语言 > 详细

java学习:算数运算相关

时间:2020-03-08 23:15:37      阅读:79      评论:0      收藏:0      [点我收藏+]

一、java 2个整数相除后会舍弃小数位,如下:

public class datatype {
    public static void main(String[] args) {
        String c = 3l + "";  //3后面待l,表示long
        System.out.println(c);
        int a = 1;
        int b = 2;
        System.out.println( a / b );
    }
}

结果:

技术分享图片

 二、取模

求余(取模):先整除再用被除数减去除数和商的积得到的差值就是余数。
1、例如 3%20
先整除 3/20 = 0;
再计算差值 3-20*0 = 3 所以余数就是3(也就是模)
2、例如 20%3
先整除 20/3 = 6;
再计算差值20 - 3*6 = 2 所以余数就是2(也就是模)
3、例如 -3%20;
先整除-3/20 = 0
再计算差值 -3 - 20*0 = -3 所以余数就是-3(也就是模)
4、例如-20%3
先整除 -20/3 = -6;
再计算差值 -20 -(-6*3)= -2所以余数就是-2(也就是模)

 

备注:

1、如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。 但被模数是负数则不可忽略。此外,取模运算的结果不一定总是整数。

 

2、对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。
例如:int x=3510;x=x/1000*1000; x的结果是?

3、“+”除字符串相加功能外,还能把非字符串转换成字符串.例如:System.out.println("5+5="+5+5); //打印结果是?5+5=55

4、以下二者的区别:
System.out.println(‘*‘ + ‘\t‘ +‘*‘);      \\输出93,因为是3个char类型的相加,会使用ASCII码对应的数字进行相加
System.out.println("*" + ‘\t‘ +‘*‘);     \\输出*  * ,有字符串的+后续都变为字符串。

 

三、++a 和 a++ 的区别

 

public class datatype {
    public static void main(String[] args) {
        int a = 0;
        int b = a++;
        System.out.println( a);
        System.out.println( b);
        int c = 2;
        int d = ++c;
        System.out.println(c);
        System.out.println(d);
    }
}

 

结果如下:

计算规则:

a=0 b=a++  这个时候先取值后运算,也就是b 取值为a 也就是0(先不理会后面的++),所以得出b=0,然后接下来a 自己++,所以a=1;

c=2 d=++c  这个时候先运算后取值,也就是d 等于1+c也就是1+2=3,d就是3;然后最后的c也是3(java中有一般都是取最后的值)

 

技术分享图片

 

 

 

 

 

java学习:算数运算相关

原文:https://www.cnblogs.com/wzwzzzzz/p/12444828.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!