已有101人关注
问题回复
发表在Java图书答疑 2016-08-03
是否精华
版块置顶:
1.float能取到的最小值是1.4E-45 = -41.1944054401574;double能取到的最小值是1.4E-45 = -41.1944054401574。
2.5L代表着长整数,长整数的取值范围-9223372036854775808~9223372036854775807。
3.static和final一块用来修饰成员变量时,可把这个成员变量理解为“常量”。(读者可自行百度搜索“常量”的相关知识)


1、    1.4E-45应该是10的负45次方吧,即10的45次方分之一,不是你算的那个2.81727......
2、那我用5不就行了
3、final float PI本来就可以定义PI为常亮,为什么还要加static,46页例3.12那个x就可以不选择静态变量啊
   我在程序中为什么就通不过


public class part {
final float PI=3.14f;//这行代码符合常量的定义,为什么编译起来会报错?
public static void main(String[] args) {
System.out.println("常量PI的值为:"+PI);

}

}


分享到:
精彩评论 1
静心_mrkj
学分:0 LV1
2016-08-04
沙发
1.读者不必在这里多浪费时间,不论是正还是负,只要是小数点的,一般float和double都可以。如果读者真想探知float取值范围,那就尝试理解下面一段话:
1 11111111 尾数的23位不全为0: 表示不是数值 
1 11111111 00000000000000000000000: 表示负无穷大.比最小负数还小的数都视为负无穷大. 
1 11111110 11111111111111111111111: 表示最小的负数,即-2^128=-3.4*10^38 
1 00000001 00000000000000000000000: 表示最大的负数,即-2^(-126)=-1.18*10^(-38) 
0 00000000 00000000000000000000000: 表示0 
0 00000001 00000000000000000000000: 表示最小的正数,即2^(-126)=1.18*10^(-38) 
0 11111110 11111111111111111111111: 表示最大的正数,即2^(128)=3.4*10^(38) 
0 11111111 00000000000000000000000: 表示正无穷大,比最大正数还大的数都视为正无穷大. 
0 11111111 尾数的23位不全为0: 表示不是数值 
棕上所述,float型数据的表示范围有以下五种(还有别的特殊的就不说了): 
负无穷大; -3.4*10^38<x<-1.175*10^(-38); 0; 1.175*10^(-38)<x<3.4*10^38; 正无穷大. 
当然,单精度数的输出只能保证6到7个有效数字,其余各位不准确,但在内存中的存放是准确的.
2.如果写5,那么5可能的数据类型有byte、short、int、long;但是如果写5L,那么他的数据类型则被指定为long型。
3.读者须首先学习一下Java的作用域,然后再学习static关键字,最后学习常量的知识。
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照