API学习包装类型Double

来源:互联网 发布:模糊图片修复软件 编辑:程序博客网 时间:2024/06/10 18:29
package com.wonders.week01.bzl;/** * JDK1.7 * Double类 * (1)属于java.lang包下的 * (2)继承了Number类,实现了Comparable<Double>接口 * @author liyongyong * */public class DoubleTest {    public static void main(String[] args) {        Double double1 = new Double("1.0");        System.out.println(double1);        /**         * public static String toString(double d)         * 将double类型转换为String类型         */        String s1 = double1.toString();        String s2 = Double.toString(12.345);        System.out.println(s1 + "==" + s2);//1.0==12.345        /**         * public static String toHexString(double d)         * 将double型转为十六进制的字符串形式         * 此方法是一个静态方法         */        String hexDouble = Double.toHexString(12.3);        System.out.println("12.3的十六进制表示是 : " + hexDouble);        /**         * 将一个字符串(可以解析为数字类型)转为双精度的double类型         * 如果该字符串不可以解析为数值型就会抛出异常NumberFormatException数字格式化异常         */        Double d = Double.valueOf("12.3");        System.out.println("字符串12.3转为双精度后的值是 : " + d);        /**         * 将double类型的数值包装为Double类型         */        Double d1 = Double.valueOf(12.3);        System.out.println("double类型的12.3转为Double为 : " + d1);        /**         * 将字符串类型的数据解析为double类型,如果不能解析为double类型就会抛出异常NumberFormatException         */        double d2 = Double.parseDouble("12.34");        System.out.println("字符串解析为基本数据类型double的值是 :" + d2);        /**         * 如果这个对象代表的值是NaN则返回true,否则返回false         */        boolean f = Double.isNaN(12.3456788);        System.out.println("返回结果是否是NaN : " + f);        /**         * 如果测试值是正无穷或者负无穷,则返回true,否则返回false         */        boolean f1 = Double.isInfinite(Double.POSITIVE_INFINITY);        System.out.println("所测值是否是正无穷或者负无穷 : " + f1);        /**         * 测试是否是正无穷或者负无穷,是则返回true,否则返回false         */        Double double2 = new Double(Double.NEGATIVE_INFINITY);        boolean f2 = double2.isInfinite();        System.out.println("double2的值是正无穷或者负无穷 : " + f2);        /**         * 测试值是否是一个数字,不是则返回true,是则返回false         */        Double double3 = new Double(Double.NaN);        boolean f3 = double3.isNaN();        System.out.println("double3的值是正无穷或者负无穷 : " + f3);        /**         * 将数值类型转化为字符串         */        String s3 = double1.toString();        System.out.println("将数值类型转换为String的值是 : " + s3);        /**         * 将该数值类型转为byte形式         */        byte b1 = double1.byteValue();        System.out.println("double转为byte后的值是 : " + b1);        Double double4 = new Double(129);        byte b2 = double4.byteValue();        System.out.println("129的byte表示是 : " + b2);        /**         * 将数值类型转为short类型         */        short sh1 = double1.shortValue();        System.out.println("double转short的值是 : " + sh1);        /**         * 将数值的类型转为int类型         */        int i1 = double1.intValue();        System.out.println("double转int的值是 : " + i1);        /**         * 将Double类型转为long         */        long l1 = double1.longValue();        System.out.println("Double转为long的值是 : " + l1);        /**         * Double类型转为float         */        float float1 = double1.floatValue();        System.out.println("Double类型转为float的值是 : " + float1);        /**         * Double类型转为double         */        double dd1= double1.doubleValue();        System.out.println("Double转为double的值是 : " + dd1);        /**         * 返回Double类型的数值的哈希值         */        int hashcode = double1.hashCode();        System.out.println("double1的哈希值是 : " + hashcode);        /**         * 返回表示浮点数的位         * 参数是一个double类型         * 静态方法,返回值是long类型         */        long bits = Double.doubleToLongBits(double1);        System.out.print("返回值是 : " + bits);        long bits1 = Double.doubleToRawLongBits(double1);        System.out.print("返回值是 : " + bits1);        /**         * 返回具有相同位模式的双浮点值         * 参数是一个long类型         */        long  l2 = 10L;        double d8 = Double.longBitsToDouble(l2);        System.out.println("s8的返回值是 : "+ d8);        /**         * 两个Double类型比较,返回值是int类型         * 如果参数值等于Double值则返回0;如果参数值大于Double值则返回值小于0否则大于0         */        Double double5 = new Double(12.3);        Double double6 = new Double(12.3);        int result1 = double1.compareTo(double5);        System.out.println("result1 = " + result1);        int result2 = double5.compareTo(double1);        int result3 = double5.compareTo(double6);        System.out.print("result3 = " + result3);        System.out.print("result2 =" + result2);        /**         * 比较两个double类型的数值大小,参数是double类型,返回值是int类型,方法是static         * 如果两个参数值相等,则返回0;         * 如果第一个参数值小于第二个参数值,则返回-1         * 如果第一个参数值大于第二个参数值,则返回1         */        double ddd1 = 12.3;        double ddd2 = 12.3;        double ddd3 = 12.4;        int res1 = Double.compare(ddd1, ddd2);        System.out.println("res1 的值是: " + res1);        int res2 = Double.compare(ddd1, ddd3);        System.out.print("res2的值是 : " + res2);        int res3 = Double.compare(ddd3, ddd1);        System.out.print("res3的值是 : " + res3);    }}

这里写图片描述

原创粉丝点击