如何在Java中检查字符串是否可解析为double?
使用parseDouble()方法
java.lang.Double类的parseDouble()方法接受一个String值,对其进行解析,然后返回给定String的double值。
如果将空值传递给此方法,则它将引发NullPointerException,并且如果此方法无法将给定的字符串解析为双精度值,则将引发NumberFormatException。
因此,要知道特定的字符串是否可以解析为双精度,请将其传递给parseDouble方法,并使用try-catch块包装此行。如果发生异常,则表明给定的String无法解析为两倍。
示例
import java.util.Scanner;
public class ParsableToDouble {
public static void main(String args[]) {
try {
Scanner sc = new Scanner(System.in);
System.out.println("Enter a string value: ");
String str = sc.next();
Double doub = Double.parseDouble(str);
System.out.println("Value of the variable: "+doub);
}catch (NumberFormatException ex) {
System.out.println("Given String is not parsable to double");
}
}
}输出结果
Enter a string value: 2245g Given String is not parsable to double
使用valueOf()方法
同样,Double类的valueOf()方法(也)接受String值作为参数,修剪多余的空格并返回由字符串表示的double值。如果给定的值不可解析为两倍,则此方法将引发NumberFormatException。
示例
import java.util.Scanner;
public class ParsableToDouble {
public static void main(String args[]) {
try {
Scanner sc = new Scanner(System.in);
System.out.println("Enter a string value: ");
String str = sc.next();
Double doub = Double.valueOf(str);
System.out.println("Value of the variable: "+doub);
}catch (NumberFormatException ex) {
System.out.println("Given String is not parsable to double");
}
}
}输出结果
Enter a string value: 2245g Given String is not parsable to double
使用Double类的构造函数
Double类的构造函数之一接受String作为参数,并构造一个包装给定值的(Double)对象。如果传递给此构造方法的字符串不可解析为Double,则将引发NumberFormatException。
示例
import java.util.Scanner;
public class ParsableToDouble {
public static void main(String args[]) {
try {
Scanner sc = new Scanner(System.in);
System.out.println("Enter a string value: ");
String str = sc.next();
Double doub = new Double(str);
System.out.println("Value of the variable: "+doub);
}catch (NumberFormatException ex) {
System.out.println("Given String is not parsable to double");
}
}
}输出结果
Enter a string value: 2245g Given String is not parsable to double
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短