zoukankan      html  css  js  c++  java
  • Java的基本数据类型及其封装类

    Java的基本数据类型及其封装类

    一、8种基本数据类型

     

     

     

     

     

     

    二、基本数据类型的包装类及大小

    三、基本数据类型和封装类的区别

    1. 定义不同。封装类是对象,基本数据类型不是;
    2. 使用方式不同。封装类需要先new初始化,再通过JVM根据具体情况实例化后赋予定值,基本数据类型可以直接赋值,某些集合类型必须使用包装类,不能使用基本数据类型,如ArrayList<Integer>
    3. 初始值不同。包装类初始值默认为null,基本数据类型根据类型不同而值不同;
    4. 存储方式和位置不用。封装类分拆引用和实例,引用存储在栈(stack),具体实例存储在堆(heap),基本数据类型存储在栈中(stack)。

    四、为什么需要包装类

    1. 包装类封装在java.lang包中;
    2. 基本数据类型没有toString()方法;
    3. 编码过程中只接收对象的情况,比如List中只能存入对象,不能存入基本数据类型;比如一个方法的参数是Object时,不能传入基本数据类型,但可以传入对应的包装类; 比如泛型等等。

    五、表现形式(具体如上表)

    1. 整数型有三种表现形式。分别是十进制、八进制(以0开头)、十六进制(以0X或者0x开头);
    2. 对于long型的数值,如果值大于int型数值最大值或者小于int型数值的最小值时,应该在数值的末尾加上L或者l(小写的L),来表示该数值是long型的。如long num=2147483650L;
    3. 默认情况下,Java中的小数都是double型的,若要声明一个小数是float型的,则需要在数值的末尾加上F或者f,注意,必须要加F或者f,否则会出错。如float num=12.34F;
    4. char ch=’a’;和char ch=97;这两个式子等价,其中97是字母a在Unicode表中的排序位置,取值范围为0~65535(十进制),也即0x0000~0xffff(十六进制);
    5. Unicode编码表中共有65535个字符,涵盖了几乎所有国家的所有语言所涉及的符号,各个符号在Unicode表中的位置依次对应于0x0000~0xffff。可以直接使用‘字符’或者字符在Unicode表中的位置表示某个字符,这两种表示方式是等价的;
    6. int型数值和char型数值之间可以进行类型转换,int赋值为Unicode表中的排序位置的数值;
    7. Java中还有一些转义字符,转义字符是以反斜线’’开头,后跟一个或多个字符。转义字符具有特定的含义,不同于字符原有的意义。

       小结:关于char基本数据类型

    1. char型变量可以被赋值成单引号括住的单个字符(字符可以为Unicode表中的任意一个字符);
    2. char型变量可以被赋值成Unicode表中的字符所对应位置下标值;
    3. char型变量可以被赋值成转义字符。

    六、总结

    每个包装类的对象可以封装一个相应的基本类型的数据,并提供了其它一些有用的方法。包装类对象一经创建,其内容(所封装的基本类型数据值)不可改变(类似于String类)

  • 相关阅读:
    【08月20日】A股滚动市净率PB历史新低排名
    沪深300指数的跟踪基金最近1年收益排名
    基金前15大重仓股持仓股排名
    中证500指数的跟踪基金最近1年收益排名
    【08月14日】A股ROE最高排名
    【08月13日】预分红股息率最高排名
    【08月09日】北上资金持股比例排名
    最近一月研报推荐次数最多的最热股票
    JDK源码阅读-------自学笔记(二十一)(java.util.ArrayList详细版集合类)
    MyBatis-Plus 3.0.3 Sql注入器添加,即全局配置Sql注入器,sqlInjector改写
  • 原文地址:https://www.cnblogs.com/lingq/p/12719180.html
Copyright © 2011-2022 走看看