Java中的基本类型与包装类型

   Java中八种基本数据类型:byte,int,      short,   long,  double,float,  char,      boolean

   Java中的包装类有:           Byte,Integer,Short,Long,Double,Float,Charactor,Boolean,以及还有,BigInteger、BigDecmail,BigInteger、BigDecimal没有相对应的基本类型,主要应用于高精度的运算,BigInteger 支持任意精度的整数。


   1、基本数据类型:不用new来创建变量,在堆栈中创建一个北非是引用的自动变量,且这个变量拥有它的值,高效。

int4字节(32位)-2147483648 ~ 2147483647   (正好超过20亿)
short2字节(16位)-32768 ~ 32767
long8字节(64位)-9223372036854775808 ~ 9223372036854774807
byte1字节(8位)-128 ~ 127
float                                     4字节(32位)大约±3.40282347E+38F (有效位数为6-7位)
double8字节(64位)大约±1.79769313486231570E+308 (有效位数为15位)

   

   2、包装类型:Java中的包装类,大部分都有如下方法:

       (1)带有基本值参数并创建包装类对象的构造函数.如可以利用Integer包装类创建对象,Integer obj=new Integer(145);

       (2)带有字符串参数并创建包装类对象的构造函数.如new Integer("-45");

       (3)可生成对象基本值的typeValue方法,如obj.intValue();

       (4)将字符串转换为基本值的 parseType方法,如Integer.parseInt(args[0]);

       (5)生成哈稀表代码的hashCode方法,如obj.hasCode();

       (6)对同一个类的两个对象进行比较的equals()方法,如obj1.eauqls(obj2);

       (7)生成字符串表示法的toString()方法,如obj.toString().

    3、包装类与基本数据类型,以及String 的转换关系

                         基本类型------>包装器类

           Integer obj=new Integer(145);

          包装器类------>基本类型
          int num=obj.intValue();

          字符串------>包装器类
          Integer obj=new Integer("-45.36");

          包装器类------>字符串包装器类

          String str=obj.toString();

          字符串------>基本类型
          int num=Integer.parseInt("-45.36");

          基本类型------>字符串包装器类

         String str=String.valueOf(5);


   4、Java中的自动装箱和自动拆箱。

      以int和Integer为例:

      自动装箱:如果一个int型的变量,被传入到一个需要Integer对象的地方,那么编译器在幕后插入一个队Integer构造方法的调用。

      自动拆箱:如果一个Integer对象呗传入到需要int型的变量的地方,则编译器将在幕后插入一个intValue方法的调用。


  5、基本数据类型与包装类的异同:

       1)、在Java中,一切皆对象,但八大基本类型却不是对象。

                 2)、声明方式的不同,基本类型无需通过new关键字来创建,而封装类型需new关键字。

   3)、存储方式及位置的不同,基本类型是直接存储变量的值保存在堆栈中能高效的存取,封装类型需要通过引用指向实例,具体的实例保存在堆中。

 4)、初始值的不同,封装类型的初始值为null,基本类型的的初始值视具体的类型而定,比如int类型的初始值为0,boolean类型为false;

   5)、使用方式的不同,比如与集合类合作使用时只能使用包装类型。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值