基本类型的包装类

java 5.0之前

包装类均位于java.lang包,不需要手动导入,八种基本类型各自对应八种相应的包装类。

Integer 类主要的方法

Field Summary:

Integer.MAX_VALUE  Integer.MIN_VALUE

将基本类型或者字符串自动转化为相对应包装类型 通过以下两种方式以Integer为例:

eg:

构造函数构建Integer类型

  •   Integer intObj = new Integer(123);
  •   Integer stringObj= new Integer("345"); 

静态方法返回Integer类型 ----这种方法在实际操作中经常被使用。

  •     Integer num0 = Integer.valueOf(123);
  •     Integer num1 = Integer.valueOf("456");

Integer 对象可以转换的基本类型方法如下

eg:

  •      byte num1=intObj.byteValue();
  •      long num2 = intObj.longValue();
  •      int num3 = intObj.intValue(); 
  •      short num4 = intObj.shortValue();
  •      double num5 = intObj.doubleValue();
  •      float num6 = intObj.floatValue();

Integer 静态方法将字符串转换为基本类型int

  • int num= Integer.parseInt("456");

转换成字符串

  • String str=intObj.toString();

以上绿色标记的是生活中经常会用到的 从基本数据类型和string类型与包装类之间的转换方式。

其他包装类如Double,Byte,Long,Float, Character, Short, Boolean. 与Integer使用方法类似。

在java5.0之后 引入了自动装箱和拆箱。如下代码所示:

  

    Integer a = 123;     //java 5.0 之后,编译器自动进行装箱操作相当于 new Integer(123);
    int c = a;           //编译器自动拆箱相当于执行操作 intValue();   

    Integer b = 1234;
    Integer d =1234;
    System.out.println(b==d); // false
    System.out.println(b.equals(d)); // true
    
    Integer e = 123;
    Integer f = 123;
    System.out.println(e==f); // true
    System.out.println(e.equals(f)); // true


//两次比较结果不同的原因是:在e==f 的比较中如果是[-128, 127] 之间的数,还是使用的是基本类型的比较。因此会出现两次不同结果。一个比较的地址,一个比较的是数值。

 

 

 

你可能感兴趣的:(Java)