判断double值是否是一个非数字值以及Double.parseDouble()与Double.valueOf()

isNaN方法判断如果double值是一个非数字(NaN)值,则返回true;否则返回false。

语法  public boolean isNaN() 

返回值:如果double值是一个非数字(NaN)值,则返回true;否则返回false。

示例  本示例创建Double对象d1,并通过Double类的isNaN 方法判断对象d1的参数值是否是数字,然后将结果赋给boolean型变量。

Double d1 = new Double(45.23F);

boolean dou = d1.isNaN();

System.out.println(dou);

语法  public static boolean isNaN(double v) 

返回值:如果参数值为 NaN,则返回true;否则返回false。

参数:v为要判断的值。

示例  该方法判断如果指定的数是一个 NaN 值,则返回true;否则返回false。

本示例通过isNaN 方法判断double值是否为数字。

double d = 123.456;

boolean b = Double.isNaN(d);

System.out.println(b);


Double.parseDouble方法是把数字类型的字符串,转换成double类型

Double.valueOf方法是把数字类型的字符串,转换成Double类型

        double a = 0.009;
        String b = "1993";

        double parseDouble = Double.parseDouble(b);
        System.out.println(parseDouble);
        Double valueOf = Double.valueOf(a); //1993.0
        Double valueOf2 = Double.valueOf(b);
        System.out.println(valueOf);//0.009
        System.out.println(valueOf2);//1993.0

结果是:

1993.0
0.009
1993.0

可以看出大体是没有任何区别,就是返回值的类型区别!


Double.parseDouble()方法的源码:

public static double parseDouble(String s) throws NumberFormatException {
        return FloatingDecimal.readJavaFormatString(s).doubleValue();
}
  • 1
  • 2
  • 3

Double.valueOf()方法的源码:

  public static Double valueOf(String s) throws NumberFormatException {
          return new Double(FloatingDecimal.readJavaFormatString(s).doubleValue());
  }

valueOf方法在返回的时候new Double(),所以返回的是Double。


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值