当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Java.Lang.Double用法及代码示例


Double 类是基本类型 double 的包装类,它包含多种有效处理 double 值的方法,例如将其转换为字符串表示形式,反之亦然。 Double 类的对象可以保存单个双精度值。 Double 类是基本类型 double 的包装类,它包含多种有效处理 double 值的方法,例如将其转换为字符串表示形式,反之亦然。 Double 类的对象可以保存单个双精度值。

主要有两个构造函数来初始化Double-object。

A. Double(double b):创建一个使用提供的值进行初始化的Double-object,其中它采用一个用于初始化的值作为参数。

public Double(double d) 

Parameters: 用于初始化的值

B. Double(String s):创建一个 Double-object,并使用字符串表示形式提供的已解析双精度值进行初始化,其中它采用字节值的字符串表示形式作为参数。

Default radix is taken to be 10.  

public Double(String s) throws NumberFormatException

抛出异常:它抛出NumberFormatException如果提供的字符串不代表任何双精度值。

Methods of Double Class

方法 执行的操作
Double byteValue() 返回与此 Double 对象对应的字节值
Double compare() 比较两个原始双精度值的数值相等性。由于它是静态方法,因此可以在不创建任何 Double 对象的情况下使用它。
Double.compareTo() 用于比较两个 Double 对象的数值是否相等,并返回小于 0,0 的值,大于 0 的值表示小于、等于和大于。
Double doubleValue() 返回与此 Double 对象对应的双精度值。
Double doubleToLongBits() 返回给定双参数的 IEEE 754 浮点 “double format” 位布局。
Double doubleToRawLongBits() 返回给定双参数的 IEEE 754 浮点 “double format” 位布局。它与以前的方法不同,因为它保留了 Nan 值。
Double.equals() 比较两个 Double 对象的相等性,如果两个对象包含相同的 double 值,则返回 true。
Double floatValue() 返回与此 Double 对象对应的浮点值。
Double hashCode() 返回与此 Double 对象对应的哈希码。
Double isInfinite() 如果考虑的双精度对象非常大,则返回 true,否则返回 false。
Double isNaN() 如果考虑的双精度对象不是数字,则返回 true,否则返回 false。
Double intValue() 返回与此 Double 对象对应的整数值
Double longValue() 返回与此 Double 对象对应的 long 值。
longBitsToDouble() 返回与参数的长位模式相对应的双精度值。
Double parseDouble() 通过解析字符串返回双精度值。
Double shortValue() 返回与此 Double 对象对应的短值
toHexString() 返回参数双精度值的十六进制表示形式。
toString() 返回 double 值对应的字符串
valueOf() 返回使用提供的值初始化的Double-object
valueOf(String s) 返回使用提供的值初始化的Double-object

执行:

Java


// Java Program to Illustrate Double Class
// Via Demonstrating Its Methods
// Class
public class GFG {
    // Main driver method
    public static void main(String[] args)
    {
        // Declaring and initializing
        // double and String values
        double b = 55.05;
        String bb = "45";
        // Construct two Double objects
        Double x = new Double(b);
        Double y = new Double(bb);
        // Method - toString()
        System.out.println("toString(b) = "
                           + Double.toString(b));
        // Method - valueOf()
        // Return Double object
        Double z = Double.valueOf(b);
        System.out.println("valueOf(b) = " + z);
        z = Double.valueOf(bb);
        System.out.println("ValueOf(bb) = " + z);
        // Method - parseDouble()
        // Return primitive double value
        double zz = Double.parseDouble(bb);
        System.out.println("parseDouble(bb) = " + zz);
        // Print statements
        System.out.println("bytevalue(x) = "
                           + x.byteValue());
        System.out.println("shortvalue(x) = "
                           + x.shortValue());
        System.out.println("intvalue(x) = " + x.intValue());
        System.out.println("longvalue(x) = "
                           + x.longValue());
        System.out.println("doublevalue(x) = "
                           + x.doubleValue());
        System.out.println("floatvalue(x) = "
                           + x.floatValue());
        int hash = x.hashCode();
        System.out.println("hashcode(x) = " + hash);
        boolean eq = x.equals(y);
        System.out.println("x.equals(y) = " + eq);
        int e = Double.compare(x, y);
        System.out.println("compare(x,y) = " + e);
        int f = x.compareTo(y);
        System.out.println("x.compareTo(y) = " + f);
        Double d = Double.valueOf("1010.54789654123654");
        System.out.println("isNaN(d) = " + d.isNaN());
        System.out.println("Double.isNaN(45.12452) = "
                           + Double.isNaN(45.12452));
        // Double.POSITIVE_INFINITY stores
        // the positive infinite value
        d = Double.valueOf(Double.POSITIVE_INFINITY + 1);
        System.out.println(
            "Double.isInfinite(d) = "
            + Double.isInfinite(d.doubleValue()));
        double dd = 10245.21452;
        System.out.println("Double.toString(dd) = "
                           + Double.toHexString(dd));
        long double_to_long = Double.doubleToLongBits(dd);
        System.out.println("Double.doubleToLongBits(dd) = "
                           + double_to_long);
        double long_to_double
            = Double.longBitsToDouble(double_to_long);
        System.out.println(
            "Double.LongBitsToDouble(double_to_long) = "
            + long_to_double);
    }
}

输出

toString(b) = 55.05
valueOf(b) = 55.05
ValueOf(bb) = 45.0
parseDouble(bb) = 45.0
bytevalue(x) = 55
shortvalue(x) = 55
intvalue(x) = 55
longvalue(x) = 55
doublevalue(x) = 55.05
floatvalue(x) = 55.05
hashcode(x) = 640540672
x.equals(y) = false
compare(x,y) = 1
x.compareTo(y) = 1
isNaN(d) = false
Double.isNaN(45.12452) = false
Double.isInfinite(d) = true
Double.toString(dd) = 0x1.4029b7564302bp13
Double.doubleToLongBits(dd) = 4666857980575363115
Double.LongBitsToDouble(double_to_long) = 10245.21452


相关用法


注:本文由纯净天空筛选整理自佚名大神的英文原创作品 Java.Lang.Double Class in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。