首页 > Java > java教程 > 正文

Java 字符串转浮点数

王林
发布: 2024-08-30 15:18:10
原创
296 人浏览过

如果我们必须对包含浮点类型数字的字符串数据执行一些数学计算,通常会使用字符串到浮点转换。有些情况下我们读取的是字符串形式的数据,我们需要将其转换为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中文网其他相关文章!

相关标签:
来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板