Logo

郎哥编程

单精度浮点Float类

2019-12-14 926

Float类是基本数据类型float的包装类,该类包含一个float类型的成员变量,该类在Java.lang包下。

Float对象的创建

创建Float对象非常简单,可以通过Float类型和字符串类型来创建Float对象。创建代码如下:

// 使用new运算符创建,传入参数为小数
Float number1 = new Float(20.15);
// 使用new运算符创建,传入参数为数字型字符串
Float number2 = new Float("35.6");
// 使用valueOf方法创建,传入参数为小数
Float number3 = Float.valueOf(19.9f);
// 使用valueOf方法创建,传入参数为数字型字符串
Float number4 = Float.valueOf("22.3");

上面代码创建了4个Float对象,分别是number1、number2、number3、number4。

number1使用new运算符实例化Float对象,传入的参数是小数。

number2使用new运算符实例化Float对象,传入的参数是数字字符串。

number3和number4使用Float类的静态方法valueOf()实例化Float对象,传入参数是小数和数字型字符串。

返回基本数值数据类型

实例化的Float对象可以返回基本数据类型表示的数值,返回的基本数据类型包括int、double、float、long、byte等类型。

Float number1 =  new  Float(20.9);
int intNum = number1.intValue();
double doubleNum = number1.doubleValue();
long longNum = number1.longValue();
float floatNum = number1.floatValue();
byte byteNum = number1.byteValue();

Float对象提供了intValue()方法返回int类型的数值;doubleValue()方法返回double类型的数值;byteValue()方法返回byte类型的数值; longValue()方法返回long类型的数值; floatValue()返回float类型的数值。

Float对象和String对象的转换

在实际编程中,经常需要在数值和字符串之间进行类型转换。Float对象提供了toString()方法,返回表示该Float数值的String对象。

Float number1 =  new  Float(20.9);
String  strNumber = number1.toString();

number1调用toString()方法返回表示该Float数值的String对象。

Float对象同时提供了parseInt()方法,将字符串对象转换为float类型,parseFloat()方法是Float类的静态方法,可以直接通过类名调用。

float fValue = Double.parseLong("230.8");

上面的代码调用Float类的parseFloat()方法,将字符串转换为float类型。

判断两个Float对象是否相等

Float类重写了Object类的equals()方法,可以判断当前Float对象表示的数值与指定的Float对象表示的数值是否相等。

Float number1 =  new  Float(20.9);
Float number2 =  new  Float("35.1");
boolean bEaual = number1.equals(number2);

number1调用equals()方法判断与number2的表示的数值是否相等。

判断Float类型取值范围

Float类提供了四个常量来表示float类型取值范围、float值的二进制位数、Class实例类型。

MAX_VALUE

float类型可取的最大值,约3.4E38。

MIN_VALUE

float类型可取的最小值,即1.4E-45。

SIZE

float值的二进制位数。

TYPE

Class实例类型,该值为float。

案例1:用不同方式创建Float对象、字符串和Float类型的转换、获取Float的值、判断两个Float对象的值是否相等、输出float取值范围的最大值和最小值。

在PBaseUnit15项目unit包下,创建Java类FloatSample。代码如下:

/** 
* @Title: FloatSample.java 
* @Package unit 
* @Description: Java基础知识课程案例 
* @author 编程训练营 
* @date 
* @version V1.0 
*/ 
 
package unit;
 
/** 
* @ClassName: FloatSample 
* @Description: 基本数据类型包装类(Float类)案例1 
* @author 编程训练营 
* @date 
* 
*/
 
public class FloatSample {
 
    /**
     * @Title: main
     * @Description: Java程序入口main方法
     * @param @param args 参数
     *
     * @return void 返回类型 @throws
     */
 
    public static void main(String[] args) {
       // 使用new运算符创建,传入参数为小数
       Float number1 = new Float(20.15);
       // 使用new运算符创建,传入参数为数字型字符串
       Float number2 = new Float("35.6");
       // 使用valueOf方法创建,传入参数为小数
       Float number3 = Float.valueOf(19.9f);
       // 使用valueOf方法创建,传入参数为数字型字符串
       Float number4 = Float.valueOf("22.3");
      
 
       // Float对象转换为字符串
       System.out.println("number1的值为:" + number1.toString());
       System.out.println("number2的值为:" + number2.toString());
       System.out.println("number3的值为:" + number3.toString());
       System.out.println("number4的值为:" + number4.toString());
 
       // 字符串转换为Float类型
       float fValue = Float.parseFloat("230.69");
       System.out.println("fValue的值为:" + fValue);
 
       // 比较两个Float的值是否相等
       boolean bEaual = number1.equals(number2);
       if (bEaual) {
           System.out.println("number1等于number2");
       } else {
           System.out.println("number1不等于number2");
       }
 
       // 输出Float取值范围
       System.out.println("float类型可取的最大值为:" + Float.MAX_VALUE);
       System.out.println("float类型可取的最小值为:" + Float.MIN_VALUE);
 
    }
 
}

程序执行结果如下图所示:

image.png

代码在线纠错(通义千问 qwen-max)

支持粘贴多个代码文件,提交后由阿里云通义千问自动分析代码漏洞、语法错误、逻辑问题并给出修改建议。
您已解锁 AI 代码纠错功能,可正常使用!

评论区

登录 后发表评论
暂无评论