java-number

通常,当我使用number类型的时候,我们可以使用原始数据类型例如byte,int,long,double等

int i =5000;
float b =13.65;
double m =0xaf;

所有包装类(整型,长型,字节型,双精度型,浮点型,短型)都是抽象类Number的子类

将原始数据类型转换为对象叫包装

public class Test {

   public static void main(String args[]) {
      Integer x = 5; // boxes int to an Integer object
      x =  x + 10;   // unboxes the Integer to a int
      System.out.println(x); 
   }
}

方法:
xxxValue() :将Number对象类型的值转为原始数字类型,方法不接受参数

byte byteValue()
short shortValue()
int intValue()
long longValue()
float floatValue()
double doubleValue()

demo::

public class Test { 

   public static void main(String args[]) {
      Integer x = 5;
      
      // Returns byte primitive data type
      System.out.println( x.byteValue() );

      // Returns double primitive data type
      System.out.println(x.doubleValue());

      // Returns long primitive data type
      System.out.println( x.longValue() );      
   }
}


compareTo() :将Number对象和参数(可以是Byte,long,integer...)
比较的类型要一致
当Integer等于参数的话,是0
小于是-1
大于是1

public class Test { 

   public static void main(String args[]) {
      Integer x = 5;
      
      System.out.println(x.compareTo(3));
      System.out.println(x.compareTo(5));
      System.out.println(x.compareTo(8));            
   }
}


equals(Object o) :判断Number对象是否等于作为参数传递的对象

public class Test { 

   public static void main(String args[]) {
      Integer x = 5;
      Integer y = 10;
      Integer z =5;
      Short a = 5;

      System.out.println(x.equals(y));  
      System.out.println(x.equals(z)); 
      System.out.println(x.equals(a));
   }
}


valueOf() : 返回保存传递参数的相关Number对象,参数可以是原始数据类型字符串类型等
可以传递两个参数,一个是字符串,一个是基数

static Integer valueOf(int i)
static Integer valueOf(String s)
static Integer valueOf(String s, int radix)

i  整型
s  字符串类型
radix 进制基数

public class Test { 

   public static void main(String args[]) {
      Integer x =Integer.valueOf(9);
      Double c = Double.valueOf(5);
      Float a = Float.valueOf("80");               
      Integer b = Integer.valueOf("444",16);

      System.out.println(x); 
      System.out.println(c);
      System.out.println(a);
      System.out.println(b);
   }
}


toString() :返回Number对象的字符串对象
如果有两个参数的话,第二个参数为进制基数

public class Test { 

   public static void main(String args[]) {
      Integer x = 5;

      System.out.println(x.toString());  
      System.out.println(Integer.toString(12)); 
   }
}


parseInt() :获取某个String的原始数据类型

public class Test { 

   public static void main(String args[]) {
      int x =Integer.parseInt("9");
      double c = Double.parseDouble("5");
      int b = Integer.parseInt("444",16);

      System.out.println(x);
      System.out.println(c);
      System.out.println(b);
   }
}

猜你喜欢

转载自www.cnblogs.com/cyany/p/9142507.html