首页 >Java >java教程 >Java 字符串转浮点数

Java 字符串转浮点数

王林
王林原创
2024-08-30 15:18:10354浏览

如果我们必须对包含浮点类型数字的字符串数据执行一些数学计算,通常会使用字符串到浮点转换。有些情况下我们读取的是字符串形式的数据,我们需要将其转换为float来执行所需的操作。在这些情况下,我们需要使用 Java API 将字符串类型转换为浮点数。

开始您的免费软件开发课程

网络开发、编程语言、软件测试及其他

如何在 Java 中将字符串转换为浮点数?

java中字符串转浮点数主要有四种不同的方式:

  • 使用 Float.valueOf(): 这是 Float 类的内置静态方法,它接受要转换为 float 的给定字符串,并返回与传递的输入字符串相对应的 float 值。如果传递的字符串不是有效数字,则此方法可能引发 NumberFormatException;如果传递 null 作为输入,则此方法可能引发 NullPointerException。这将返回 Float 类的原始对象。
  • 使用 Float.parseFloat(): 这也是 Float 类的内置静态方法,它接受要转换为 float 的给定字符串,并返回与传递的输入相对应的 float 值细绳。这会返回一个原始浮点值,与 valueOf () 方法不同,后者返回一个 Float 对象。
  • 使用构造函数:这仅涉及使用接受字符串参数作为输入并返回浮点数的 Float 类构造。
  • 使用 java.text.DecimalFormat 类: 此方法涉及创建 java.text.DecimalFormat 类的实例,调用 DecimalFormat 类的 parse 方法,该方法接受要转换为浮点数的字符串作为输入,并然后调用方法 floatValue 来获取与给定字符串对应的浮点值。
  • 根据我们的需求,可以使用上述四种方式中的任意一种将浮点数转换为字符串。

语法

1。 Float.valueOf()

public static Float valueOf(String input) throws NumberFormatException

在上面的语法中,输入是要转换为浮点数的字符串。上述方法的返回类型是 Float 包装类的对象。 

2。 Float.parseFloat()

public static float parseFloat(String input) throws NumberFormatException

在上面的语法中,输入是要转换为浮点数的字符串。上述方法的返回类型是浮点值。

3。使用构造函数

new Float(String input)

使用要转换为浮点数的字符串作为输入调用上述构造函数,给出与给定字符串相对应的浮点值。

4。 text.DecimalFormat

DecimalFormat format= new DecimalFormat (“#”);
format.parse(String input).floatValue();

在上面的方法中,首先创建了 java.text.DecimalFormat 的实例,然后 parse 方法涉及接受字符串作为输入类型,然后是 floatValue () 方法来获取浮点值。

注意:如果传递无效字符串作为输入,上述所有方法都可能引发异常。

Java 字符串浮点数示例

下面是要浮动的 Java 字符串的各种示例:

示例#1

此示例演示如何使用 parseFloat() 方法将字符串转换为浮点数。

代码:

public class StringToFloatDemo{
public Float convertStringToFloat(String stringvalue){
try{
float floatValue= Float.parseFloat(stringvalue);
return floatValue;
}
catch(NumberFormatException e){
System.out.println ("NumberFormatException occurred.");
System.out.println(stringvalue + " is not a valid number.");
return null;
}
}
public static void main(String args[])
{
StringToFloatDemo demo = new StringToFloatDemo();
String input= "201.5";
float output= demo.convertStringToFloat("201.50");
System.out.println("Float Value of " + input + " is : " + output);
}
}

输出:

Java 字符串转浮点数

如果出现异常,让我们考虑一下如果“Edubca”作为输入传递给convertStringToFloat函数,那么它将显示以下输出:

Java 字符串转浮点数

示例#2

在这个例子中,我们将展示如何使用构造函数方法将字符串转换为浮点数。

代码:

public class StringToFloatDemo{
public Float convertStringToFloat(String stringvalue){
try{
float floatValue = new Float(stringvalue);
return floatValue;
}
catch(NumberFormatException e){
System.out.println ("NumberFormatException occurred.");
System.out.println(stringvalue + " is not a valid number.");
return null;
}
}
public static void main(String args[])
{
StringToFloatDemo demo = new StringToFloatDemo();
String input= "200";
float output= demo.convertStringToFloat(input);
System.out.println("Float Value of " + input + " is : " + output);
}
}

输出:

Java 字符串转浮点数

与示例 1 类似,如果传入无效字符串作为输入,则会生成 NumberFormatException。

示例#3

在这个例子中,我们将展示如何使用 Float 类的 valueOf() 方法将字符串转换为浮点数。

代码:

public class StringToFloatDemo{
public Float convertStringToFloat(String stringvalue){
float floatValue;
try{
floatValue= Float.valueOf(stringvalue);
return floatValue;
}catch (NumberFormatException e)
{
System.out.println ("NumberFormatException occurred.");
System.out.println(stringvalue + " is not a valid number.");
return null;
}
}
public static void main(String args[])
{
StringToFloatDemo demo = new StringToFloatDemo();
String input= "200";
float output= demo.convertStringToFloat(input);
System.out.println("Float Value of " + input + " is : " + output);
}
}

输出:

Java 字符串转浮点数

与示例 1 和 2 类似,如果传入无效字符串作为输入,则会生成 NumberFormatException。

示例#4

在此示例中,我们将展示如何使用 DecimalFormat 类将字符串转换为浮点型。

代码:

import java.text.DecimalFormat;
import java.text.ParseException;
public class StringToFloatDemo{
public Float convertStringToFloat(String stringvalue){
float floatValue;
DecimalFormat decimalFormat = new DecimalFormat("#");
try {
floatValue = decimalFormat.parse(stringvalue).floatValue();
return floatValue;
} catch (ParseException e) {
System.out.println("Parse Exception Occurred");
System.out.println(stringvalue + " is not a valid number.");
return null;
}
}
public static void main(String args[])
{
StringToFloatDemo demo = new StringToFloatDemo();
String input= "200";
float output= demo.convertStringToFloat(input);
System.out.println("Float Value of " + input + " is : " + output);
}
}

输出:

Java 字符串转浮点数

如果传递了无效的字符串作为输入,则会生成解析异常。

让我们考虑一下当我们传递“Edubca”而不是 200 作为上述程序的输入时的情况;那么将会产生以下错误:

Java 字符串转浮点数

以上是Java 字符串转浮点数的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn