Java 数据运算

本文探讨了Java中的数据运算,包括除法运算 `/` 的整数取整特性,取模运算 `%` 的概念,以及在不同类型数据相加时的自动类型提升规则。举例说明了short和byte相加会得到int类型的结果,并指出对于更复杂的运算,可以借助工具类完成,如幂运算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基本的数据运算符都能轻松地搜索到,这里只写我在复习的过程中新的感悟。 

  • / : 除法, 但是如果是两个int类型相除,得到的还是int类型;
  • %: 其实就是取余数, 但是有一个更正式的名字:取模运算
        int x = 1;
        int y= 5;
        int z =2;
        System.out.println(x/y); // 0    1/5=0.2, 取整数部分是0
        System.out.println(y%z); //1   5/2=2...1,  取余数为1

另外,在数据运算过程中,默认向高类型转换:

  • 如果a+b 中最高类型是double, 那么结果也会是double类型;
  • 如果最高类型是long, 那么结果也是long类型;
  • 其他类型的计算结果都是int类型:
package superlily.datatype;

public class Demo1 {
    public static void main(String[] args) {
        long a = 12345765432456L;
        int i = 123;
        short s = 34;
        byte b =2;

        System.out.println(a+i+s+b); // long 类型 12345765432615
        System.out.println(i+s+b);  // int 159
        System.out.println(s+b);  //int  36
        System.out.println((double)s + b); //double   36.0
    }
}

这一段warning再一次印证了short类型的数和byte类型的数相加(s+b)  结果是个int类型的数:

Java中更复杂的运算我们一般可以直接使用一些工具类来进行 例如:幂运算 2^3 = 2*2*2

/*Java中更复杂的运算我们一般可以直接使用一些工具类来进行
例如:幂运算
2^3 = 2*2*2
 */
double d = Math.pow(2,3);
System.out.println(d); //8.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值