A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张建银 黑马帝   /  2012-2-7 00:08  /  2741 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

float b=1.2;double c=2.6;
1+'a'++b+c=  谁知道结果是多少

12 个回复

倒序浏览
1+'a'+b+c=
回复 使用道具 举报
LZ这里写错了吧float b=1.2;应该写成float b=1.2f;或者强转成float类型。
改正错误之后结果是:101.79999694824218
float类型嘛,都是很精确的

评分

参与人数 1技术分 +1 收起 理由
唐秀启 + 1

查看全部评分

回复 使用道具 举报
float b=1.2;赋值是非法的
应该是float b=1.2f;
刚用程序跑了一下 结果为101.799999694824218
数据类型之间的有限关系为:byte,short,char-> int -> long -> float -> double(最高)
低优先级的加高优先级的需要都转换成高优先级的

所以最终结果为double型,至于不等于101.8 我想可能是一些转换过程中的精度损失吧。

评分

参与人数 1技术分 +1 收起 理由
唐秀启 + 1

查看全部评分

回复 使用道具 举报
java中基本数据类型除了boolean型,都可以进行类型转换。
                 表示数范围小的数可以向表示数范围大的进行自动类型转换。
                当把一个表示范围小的数值或变量赋给一个表示范围大的数时,
                系统会进行自动类型转换以计算结果。
                                char
                                         --->int--->long--->float--->double
                byte--->short

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
我记得这个大一时候讲C语言也是这样啊好像。
回复 使用道具 举报
张伟~ 黑马帝 2012-2-7 00:32:23
7#
1+'a'++b+c  ?
这叫什么运算
多写了个+号吗?
楼主问题也得把问题写清楚啊,还有那个float后面也没写f
像这种代码的话你自己写几行代码不就知道结果了吗
回复 使用道具 举报
一是float类型数值后要加f,
否则失败;
二是类型转换:
char-->int-->float-->double,
最后终为double类型.

至于精度损失是很麻烦,
同学有兴趣可以baidu一哈.
回复 使用道具 举报
float b=1.2;赋值是非法的
应该是float b=1.2f;
数据类型之间的有限关系为:byte,short,char-> int -> long -> float -> double(最高)低向高转
这个问题自己运行下不就好了!
回复 使用道具 举报
数据类型之间的转换关系要知道:byte,short,char-> int -> long -> float -> double(最高的)
float b=1.2后面少了个f;
赋值非法
应该是float b=1.2f;
回复 使用道具 举报
1+'a'+b+c

1.在进行+运算时'a'字符会转换成ascii码值97进行

2.在进行+运算时,系统会进行自动类型转换以计算结果。
      --->int--->long--->float--->double
回复 使用道具 举报
首先应该提醒楼主,应该自己先编译一下,感觉与自己想的不一致,然后在把代码复制上去,两个明显的错误就是少个f,多个+号。
主要想说做程序一定要细心,否则小的粗心引起的bug,再回头很难找还会浪费很多时间,不过还是能知道你所问的问题是什么。
基本数据类型之间有一定的优先级顺序,在java中变量的优先级由低到高的排列顺序是:byte -  (short  ,   char)  -    int   -  long  -   float  -   double
自动类型转换:由优先级低的数据类型转向优先级高的数据类型。
所以字符'a'对应的asc码值是97,然后根据自动类型转换最终都会转成double型。我电脑运行的结果是:101.79999694824218

评分

参与人数 1技术分 +1 收起 理由
荣凯旋 + 1 实践是最有效的方式

查看全部评分

回复 使用道具 举报
个人感觉,这种问题就不要问了,没有意义,如果想知道结果自己运行一下了。

评分

参与人数 1技术分 +1 收起 理由
admin + 1 很有道理!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马