欢迎访问宙启技术站
智能推送

用Java函数如何将字符串转换为数字类型数据?

发布时间:2023-06-01 21:43:35

将字符串转换为数字类型数据在Java中非常常见,这也是在Java编程中经常需要处理的问题之一。Java中提供了几种将字符串转换为数字类型数据的方法,这些方法包括使用Java内置函数、使用Java的Wrapper类和使用正则表达式等。在本文中,我们将介绍如何使用这些方法来将字符串转换为数字类型数据。

1. 使用Java内置函数

Java内置函数提供了将字符串转换为数字类型数据的函数。这些函数包括:

a. parseInt()

parseInt()函数可以将字符串转换为int类型的数字。该函数只能处理整数类型的字符串,如果字符串中包含小数点或其他非数字字符,则会出现异常。

下面是一个例子:

String str = "123";

int num = Integer.parseInt(str);

System.out.println(num);

输出结果为:123

b. parseLong()

parseLong()函数可以将字符串转换为long类型的数字。该函数只能处理整数类型的字符串,如果字符串中包含小数点或其他非数字字符,则会出现异常。

下面是一个例子:

String str = "1234567890123456";

long num = Long.parseLong(str);

System.out.println(num);

输出结果为:1234567890123456

c. parseFloat()

parseFloat()函数可以将字符串转换为float类型的数字。该函数可以处理包含小数点的字符串,如果字符串中包含其他非数字字符,也会出现异常。

下面是一个例子:

String str = "12.3456";

float num = Float.parseFloat(str);

System.out.println(num);

输出结果为:12.3456

d. parseDouble()

parseDouble()函数可以将字符串转换为double类型的数字。该函数可以处理包含小数点的字符串,如果字符串中包含其他非数字字符,也会出现异常。

下面是一个例子:

String str = "123.4567890123456";

double num = Double.parseDouble(str);

System.out.println(num);

输出结果为:123.4567890123456

2. 使用Java的Wrapper类

Java的Wrapper类提供了将字符串转换为数字类型数据的方法。这些方法包括:

a. Integer.valueOf()

valueOf()函数可以将字符串转换为Integer类型的数字对象。该函数只能处理整数类型的字符串,如果字符串中包含小数点或其他非数字字符,则会出现异常。

下面是一个例子:

String str = "123";

Integer num = Integer.valueOf(str);

System.out.println(num);

输出结果为:123

b. Long.valueOf()

valueOf()函数可以将字符串转换为Long类型的数字对象。该函数只能处理整数类型的字符串,如果字符串中包含小数点或其他非数字字符,则会出现异常。

下面是一个例子:

String str = "1234567890123456";

Long num = Long.valueOf(str);

System.out.println(num);

输出结果为:1234567890123456

c. Float.valueOf()

valueOf()函数可以将字符串转换为Float类型的数字对象。该函数可以处理包含小数点的字符串,如果字符串中包含其他非数字字符,也会出现异常。

下面是一个例子:

String str = "12.3456";

Float num = Float.valueOf(str);

System.out.println(num);

输出结果为:12.3456

d. Double.valueOf()

valueOf()函数可以将字符串转换为Double类型的数字对象。该函数可以处理包含小数点的字符串,如果字符串中包含其他非数字字符,也会出现异常。

下面是一个例子:

String str = "123.4567890123456";

Double num = Double.valueOf(str);

System.out.println(num);

输出结果为:123.4567890123456

3. 使用正则表达式

使用正则表达式将字符串转换为数字类型数据也是一种常见的方法。正则表达式可以处理特殊情况,如字符串中包含空格或其他非数字字符。下面是一个例子:

String str = "     123.45    ";

Pattern pattern = Pattern.compile("(\\d+\\.?\\d*)|(\\d*\\.?\\d+)");

Matcher matcher = pattern.matcher(str.trim());

if (matcher.matches()) {

    double num = Double.parseDouble(matcher.group());

    System.out.println(num);

}

输出结果为:123.45

在上面的代码中,先使用trim()函数删除字符串中的空格,然后使用正则表达式处理包含小数点的字符串。正则表达式中的“(\\d+\\.?\\d*)|(\\d*\\.?\\d+)”表示匹配包含小数点的数字字符串,然后使用parseDouble()函数将匹配到的字符串转换为double类型的数字。

总结

在Java中,将字符串转换为数字类型数据是非常常见的,也非常重要的一种操作。本文介绍了使用Java内置函数、Java的Wrapper类和正则表达式等方式来将字符串转换为数字类型数据。根据不同的需要,选择不同的方法可以有效地解决该问题。