为了账号安全,请及时绑定邮箱和手机立即绑定

double的问题

double avg1=78.5;

int rise=5;

double avg2=avg1+rise;

  我想问一下 double 和int自动型转化的关   :是否只能int转化为double型 反过来double型一定不能转化为int型。  这样理解对吗?  还是double行也可以转化为int行    只不过要满足int的字节数必须大于double?

坐等大神回答! 新手疑问比较多 勿喷!!

2 如果是只能int转化为double 是否必须满足目标类型大于源类型?

正在回答

1 回答

  • double型可以通过强制类型转换而转换为int型变量,但是因为double本身有8个字节的长度,而int只有4个字节,所以会造成高位字节的丢失。比如:

        double avg1=78.5;
        int avg2=(int)avg1;
        System.out.println(avg2);

       会输出78,后面的0.5就被丢失了。

  • 不是很明白你的这句话:

    目标类型大于源类型

        这里的大于应该理解成存储的字节长度吗?如果是,那么目标是不发生数据丢失的情况的话目标类型的确应该大于源类型

0 回复 有任何疑惑可以回复我~
#1

无悔欲 提问者

谢啦!!
2015-08-20 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165225    人
  • 解答问题       17581    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

double的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信