① java中float与Float有什么区别
float是基本数据类型,Float是包装类(封装类)。封装类可将接本数据类型封装后当作对象进行操作,并为各种基本数据类型提供各种转换功能。
例如Float f = new Float(3.4f);,即可实现将3.4f这个float类型的基本数据类型变量封装,然后当作对象处理,进行诸如类型转换(转换为字符串或者十六进制数);也可通过Float类中的静态方法或者非静态方法将字符串转换为基本数据类型,例如float f = Float.parseFloat("12.3");。
② java中如何初始定义一个数组是float型的
float foo[]=new float[n];n为灶敏该数组慧旅的长隐碧枝度。一维数组的初始化?,例:float foo={1,2,3,4,5};
③ java中float和double的区别
float表示单精度浮点数在机内占4个字节,用32位二进制描述。
double表示双精度浮点数在机内占8个字节,用64位二进制描述。
浮点数在机内用指数型式表示,分解为:数符,尾数,指数符,指数四部分。
数符占1位二进制,表示数的正负。
指数符占1位二进制,表示指数的正负。
尾数表示浮点数有效数字,0.xxxxxxx,但不存开头的0和点
指数存指数的有效数字。
指数占多少位,尾数占多少位,由计算机系统决定。
可能是数符加尾数占24位,指数符加指数占8位 -- float.
数符加尾数占48位,指数符加指数占16位 -- double.
知道了这四部分的占位,按二进制估计大小范围,再换算为十进制,就是浮点数的数值范围。
对编程人员来说,double 和 float 的区别是double精度高,有效数字16位,float精度7位。但double消耗内存是float的两倍,double的运算速度比float慢得多,java语言中数学函数名称double 和 float不同,不要写错,能用单精度时不要用双精度(以省内存,加快运算速度)。