黑马程序员技术交流社区

标题: 关于基本数据类型声明的问题?? [打印本页]

作者: 搁浅灬石头    时间: 2014-10-10 08:58
标题: 关于基本数据类型声明的问题??
本帖最后由 搁浅灬石头 于 2014-10-11 22:10 编辑

基本数据类型变量的声明:如: byte  num = 122;
                                                   float nun = 3.13;
把3.13赋值给nun是float,默认为double类型,这样宽的给窄的数据类型会丢失精度不可以,这个理解?
那么,把122赋值给byte,是不是默认为int类型,也是宽的数据类型给窄的,为什么就可以额?
java新手,有谁给讲解一下啊,原本题是会的,但是就像搞清楚这是什么个状况?

作者: tiancairc    时间: 2014-10-10 09:14
byte和int都是整型,是一个数据类型,只是int比较常用而已。在某些情况下还的用byte,所以byte和int基本没有什么不同。就是能够表达的范围有所不一样而已;把浮点型数据复制给整型数据肯定会丢失数值的,这是没有什么好说的,一般都想得通
作者: 搁浅灬石头    时间: 2014-10-10 09:20
tiancairc 发表于 2014-10-10 09:14
byte和int都是整型,是一个数据类型,只是int比较常用而已。在某些情况下还的用byte,所以byte和int基本没 ...

double和float都是浮点型啊
byte和int都是整型。
我想知道,整形的可以,为什么浮点型的不可以啊
作者: new999    时间: 2014-10-10 09:55
本帖最后由 new999 于 2014-10-10 10:01 编辑

一切都要看编译器是怎么处理的。byte  num = 122;122在byte的范围内,编译器自动转再赋值
float nun = 3.13f;。。。
作者: 搁浅灬石头    时间: 2014-10-10 10:02
new999 发表于 2014-10-10 09:55
一切都要看编译器是怎么处理的。byte  num = 122;122在byte的范围内,编译器自动转再赋值
1float nun = 3. ...

我知道,浮点float后要加大写或小写的f/F,我想搞清楚:byte num = 3;




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2