包装类

原创 2018年04月16日 18:42:36
1:包装类
    意义:把基本数据类型转换成引用数据类型操作。
  jdk5.0以后支持自动拆装箱操作。
    拆箱:引用数据类型转换成基本数据类型
      int a = new Integer("4");//自动拆箱
    装箱:  把基本数据类型转换成引用数据类型
       Double a = 3.14F;//编译错误
       Float  b = 3.14F;//编译正确
2:编译器在检查基本数据类型变量的方法时,
    先检查是否有本身或者是自动转换的基本数据类型的方法
    如果有,就调用。
    如果没有,检查本身包装类的方法。
    有,就调用,没有就编译错误。
  public static void main(String[] args) {
byte num = 5;
show(num);// 输出的short:5

}
public static void show(int a){
System.out.println("int:"+a);
}
public static void show(short a){
System.out.println("short:"+a);
}
public static void show(Byte a){
System.out.println("Byte:"+a);
}
public static void show(Long a){
System.out.println("Long:"+a);
}
public static void show(float a){
System.out.println("float:"+a);
}
public static void show(Double a){
System.out.println("Double:"+a);
}
3:包装类提供将字符串转换成相应的基本数据类型
    parseXXX(String str);
    XXX:对应的是基本数据类型名
    reg:
    int num = Integer.parseInt("123");
        //结果为int类型的123
    String str = "3.14";
    double d = Double.parseDouble(str);
    
    double d = Double.parseDouble("3.14a");
    //上述代码会报异常
    NumberFormatException,数字格式异常。
4:提供了其他方法
   1:提供将基本数据类型转成二进制以字符串的形式。
      int num = 5;
      String str = Integer.toBinaryString(num);

   2:提供将基本数据类型转成16进制以字符串的形式。

     int num = 5;   String str = Integer.toHexString(num);

包装类:八大基本数据类型
   java语言是面向对象的语言,而八大基本数据类型的值不是对象
     当我们想把这些值当成对象时,就需要使用包装类,功能就
     是把基本数据类型的数值转换成对象。
   byte---java.lang.Byte
   short---java.lang.Short
   int---java.lang.Integer
   long---java.lang.Long
   float--java.lang.Float
   double---java.lang.Double
   char---java.lang.Character
   boolean---java.lang.Boolean 
    常用方法:
    Integer.valueOf(int val):
          会将int的值转换Integer类型的对象
    Double.valueOf(double val):
          会将double的值转换Double类型的对象
    装箱操作:基本数据类型--->包装类 
       intValue():
       doubleValue();
      拆箱操作:将包装类对象转换成相应的基本数据类型
    
   
    在jdk1.5版本以后,支持自动拆箱和装箱    
    在做运算时,包装类的对象都会转换成相应的
    基本数据类型再计算(自动拆箱)
       Integer num = 5;--->Integer num = Integer.valueOf(5)
                   装箱操作
       int a = new Integer("5");---->int a = new Integer(5).intValue();
                  拆箱操作
       reg:
          Integer a = 5;//装箱
          Integer b = 6; //装箱
          Integer c = a+b;//先拆箱,运算结果再装箱


    常用方法:
         Integer.parseInt(String str)
         Double.parseDouble(String str)
         作用:将字符串转换成包装类型
         int a = Integer.parseInt("12");
         
         int b = Integer.parseInt("abc");这种情况
         会出现异常:
         NumberFormatException:数字格式化异常---程序运行时发生


疯狂Java之学习笔记(19)-----------包装类和匿名类

包装类(Wrapper Class)   包装类是针对于原生数据类型的包装。   因为有8个原生数据类型,所以对应有8个包装类。   所有的包装类(8个)都位于java.lang下。   Ja...
  • u011225629
  • u011225629
  • 2015年04月28日 09:45
  • 1616

Java 8增强的包装类

Java是面向对象的编程语言,但它也包含了8种基本数据类型,这8种基本数据类型不支持面向对象的编程机制,基本数据类型也不具备“对象”的特性:没有成员变量、方法可以被调用。Java之所以提供8种数据类型...
  • OREO_GO
  • OREO_GO
  • 2016年05月24日 09:21
  • 782

【Java之内存分析和String对象、包装类】Java之内存分析和String对象、包装类

ava中内存分析: 1.  栈(Stack):存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new出来的对象)或者常量池中(字符串常量对象存放在常量池中)。 2...
  • yanhui_wei
  • yanhui_wei
  • 2014年07月09日 18:25
  • 1324

Java中包装类型的作用

Java是面向对象的语言,每一种基本数据类型都应该有对应的对象类型,方便对基本类型进行操作。包装类型可以解决一些基本类型解决不了的问题,如下: 1  有时候一个函数需要传递一个Object变量 而你想...
  • Beixiaozhang
  • Beixiaozhang
  • 2016年11月21日 18:47
  • 3914

Java基础——包装类

Java是面向对象的编程语言,但它也包含了8种基本数据类型。这8种数据类型不支持面向对象的编程机制,基本数据类型的数据也不具备“对象”的特性:没有成员变量、方法可以被调用。这8种数据类型带来了一定的方...
  • OREO_GO
  • OREO_GO
  • 2016年07月29日 20:21
  • 490

Java中的包装类及其注意事项

我们知道,在Java中,除了8
  • Bettarwang
  • Bettarwang
  • 2014年05月18日 22:17
  • 1425

数学运算类和包装类

@(笔记)[面向对象|MarkDown|我的博客|每日一类]07.16数学运算类和包装类Math类Math类中所有的属性和方法都是静态的,也就是说全露都可以可用Math.属性和Math.方法名调用属性...
  • CodeAi
  • CodeAi
  • 2015年07月19日 03:17
  • 329

包装类常用方法

一, ***vlaue的使用 二,valueOf() 方法的使用 三,parse**() 方法可以将字符串变成基本数据类型 eg: String str = "33"; ...
  • wwp231
  • wwp231
  • 2016年08月22日 23:33
  • 449

JAVA学习笔记(十七)- Object类和包装类

Object类/* * Object类是所有类的根,默认自定义类都继承自此类 */ public class Test08 { public static void main(String...
  • wangzi11322
  • wangzi11322
  • 2015年03月25日 10:56
  • 1391

ios开发第一天-包装类

oc是面向对象的语言,与java类似,由于存在int,double,float等类型,因此,提供了NSValue和NSNumber来封装c语言中的基本类型。 注意: NSInteger,NSUInte...
  • lwb102063
  • lwb102063
  • 2017年04月10日 20:57
  • 224
收藏助手
不良信息举报
您举报文章:包装类
举报原因:
原因补充:

(最多只允许输入30个字)