作者chenhung (小胡子)
看板java
标题[问题] 预设整数 int 浮点数 double
时间Wed Sep 28 09:31:04 2011
大家好
我有一个问题想要请问
书上写,整数值的预设型别为 int
读到整数数值时,会先取得 4byte 的记忆体空间暂时储存
然後再把值复制到指定的变数所代表的记忆体空间储存
若程式码的数值未超过 int 最大或最小值
自然没问题 举例: byte a=8
浮点数的预设型别为 double
读到浮点数值时,会预设取得 8byte 的记忆体空间暂时储存
然後再把值复制到指定的变数所代表的记忆体空间储存
若配置给变数的记忆体空间是 8byte 自然没问题
若小於 8byte 则会产生型别不符的错误
举例: float b=3.0 //错误
我的问题就是:byte a=8,是 预设 int 4byte 放入 byte 1byte,这样就可以
可是 float b=3.0,是预设 double 8byte 放入 float 4byte ,这样就不行
请问是为什麽呢?
byte a=8 //正确 float b=3.0 //错误
1byte 预设 int 4byte 4 byte 预设 double 8byte
同样都是大放小,为什麽 整数可以 浮点数不行 = =
如果标题取的不好,我再更改 @@
谢谢
--
欢 迎 来 到 温 馨 的 ~ 怎麽走?
' ' ′‵ > < ' ' ^ ^ ⊙⊙ --" @ @ 生活娱乐馆 生活, 娱乐, 心情
▽ ▽ ▽ ∪ _ ▽ ε ε Life_Job 职场
/
V\ /
O\ V
L\ /
U\ \
N/ <
T> /
EE\ V
RV
Σ职场甘苦谈→求职/行业/工作
/╰ /╰ /╰ /╰ /╰ /╰ /╰ /╰
Volunteer 一起来做好事!
我们都是好命的孩子,所以要付出更多喔!(* ̄▽ ̄*) wennythepooh
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 175.180.181.104
1F:→ lachtchlee:8 < 127 so ok 09/28 11:01
2F:→ lf21201:观念超怪 float f = 3.0; 这句没有问题呀@@" 09/28 11:27
※ 编辑: chenhung 来自: 175.180.181.104 (09/28 11:44)
3F:→ sbrhsieh:差别在於会不会 truncate 部份有效的 bits。 09/28 21:04
4F:→ chenhung:二楼的朋友,这句话是无法执行的 @@ 09/29 17:21
5F:→ overxxx:整数好像预设byte,short,int会判断范围,浮点数就是double 10/05 10:00
6F:→ overxxx:long在数字後要加L,float要在数字後加f-->float f = 3.0f; 10/05 10:03
7F:→ chenhung:楼上的朋友,你说的我都知道,可是这不是我要问的>"< 10/06 16:13
8F:→ chenhung:我不知道的是 整数大放小可 浮点却不行 >"< 10/06 16:15
9F:→ overxxx:整数不能大放小啊,我是指你输入的整数会自己判断范围 10/06 17:32
10F:→ chenhung:原来如此 所以整数比较聪明罗 XD 10/07 19:10
11F:→ chenhung:所以应该是我想太多 囧 感谢 10/07 19:12
12F:→ overxxx:应该说compiler设计是如此 10/07 19:37
13F:→ chenhung:感谢楼上的朋友解释 ^^ 10/10 19:43
14F:推 lachtchlee:错 float f = 3.0; =>对 float f = (float) 3.0; 10/14 20:27