java运算中的数据类型变化

本文深入探讨了Java中运算符的类型判断规则,特别是整数除法的实现方式,以及如何通过类型转换获得精确结果。通过具体示例展示了整数与浮点数运算的差异,并强调了强制类型转换在确保计算准确性的重要性。

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

1.当有若干的变量或常量参与运算时,结果的数据类型取决于参与运算的这些变量或常量的类型范围最大那个类型

如下:

public class Test

{

public static void main(String[] args)

{

int a = 1;

int b = 2;

int c = a/b;

System.out.println(c);

}

}

最后运行到结果为:0


当我们将

int c = a/b   改为   double c = a/b 后,运行得到的结合为:0.0

那么我们如何获得正确的值0.5呢?

可以如下:

double c = (double)a/b;    //对 a/b的运行结果进行一个强制的类型转换,此时即可得到正确的结果 0.5


2.如下:

1)double a = 1;

       int b=2;

       int c = a/b;    

将产生什么样的结果呢?

2)double a = 1;

       int b=2;

       double c = a/b; 

又将产生什么结果呢?


分析:

1)a为double类型,b为int类型,double类型的范围比int类型的范围大,所以可以得出a/b的类型为double类型,当int c = a/b 时,编译时,将产生编译错误。

2)a/b为double型,c为double型,故运行时能产生正确的结果:0.5 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值