这篇文章主要介绍了Java Number类原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
Number类
内置数据类型:byte、int、long、double等
包装类:Integer、Long、Byte、Double、Float、Short、
这种由编译器特别支持的包装称为装箱,所以当内置数据类型被当作对象使用的时候,编译器会把内置类型装箱为包装类。相似的,编译器也可以把一个对象拆箱为内置类型。Number 类属于 java.lang 包。
public class Test{ public static void main(String args[]){ Integer x = 5; x = x + 10; System.out.println(x); } }
当 x 被赋为整型值时,由于x是一个对象,所以编译器要对x进行装箱。然后,为了使x能进行加运算,所以要对x进行拆箱
Number类方法:
xxxValue方法:将Number对象转换为xxx数据类型的值并返回
public class Test{ public static void main(String args[]){ Integer x = 5; // 返回 byte 原生数据类型 System.out.println( x.byteValue() );//5 // 返回 double 原生数据类型 System.out.println(x.doubleValue());//5.0 // 返回 long 原生数据类型 System.out.println( x.longValue() ); //5 }
compareTo()方法:将number对象与参数比较,针对俩个相同类型的数据进行比较
- 如果指定的数与参数相等返回0。
- 如果指定的数小于参数返回 -1。
- 如果指定的数大于参数返回 1。
public class Test{ public static void main(String args[]){ Integer x = 5; System.out.println(x.compareTo(3));//1 System.out.println(x.compareTo(5));//0 System.out.println(x.compareTo(8));//-1 } }
equals()方法:判断number对象是否与参数相等
Integer x = 5; Integer y = 10; Integer z =5; Short a = 5; System.out.println(x.equals(y)); //false System.out.println(x.equals(z)); //true System.out.println(x.equals(a));//false
valueOf()方法:返回给定参数的原生Number对象值,该方法时静态方法
Integer x =Integer.valueOf(9);//9 Double c = Double.valueOf(5);//5.0 Float a = Float.valueOf("80");//80.0 Integer b = Integer.valueOf("444",16); // 使用 16 进制//1092
toString()方法:以字符串的形式返回值
System.out.println(x.toString()); System.out.println(Integer.toString(12));
parselnt():将字符串解析为int类型
int x =Integer.parseInt("9"); double c = Double.parseDouble("5"); int b = Integer.parseInt("444",16);