java参数的调用

[复制链接]
查看11 | 回复5 | 2009-7-2 21:25:09 | 显示全部楼层 |阅读模式
自动转换规律bytes->short->char->int->long->float->double (从左到右)因为你c定义了int 可以就近int 而long t就double...
回复

使用道具 举报

千问 | 2009-7-2 21:25:09 | 显示全部楼层
JVM语言规范指出:Java整数计算只有32位和64位精度两种,如果涉及long的计算会扩展到64位,否则至少也用32位精度。即short在运算时首先转换成int再运算long的计算会扩展到64位double 以上是由低向高的转换,完全自动进行,如果是由高向低:1、显式强制转换short i=10;i=i+1;会报错,必须显式强制...
回复

使用道具 举报

千问 | 2009-7-2 21:25:09 | 显示全部楼层
这是JAVA的语法规范,就是这么要求。八种基本数据类型,由低向高自动转换,其中byte,short和char它们三个都自动转换为int类型。所以这里的char c='d';自动就可以转换为int型;
long t=1;自动就可以转换为double型;楼主明白了吗...
回复

使用道具 举报

千问 | 2009-7-2 21:25:09 | 显示全部楼层
JVM内部原理,可以去爪哇岛和那几个喝咖啡的人讨论讨论...
回复

使用道具 举报

千问 | 2009-7-2 21:25:09 | 显示全部楼层
向上转型...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行