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类)

  • 相关阅读:
    java四种线程池类型以及可选择的阻塞队列
    复习-java向上转型
    synchronized 加在方法和代码块底层实现区别
    synchronized 和 lock 的区别
    hashmap-put方法过程
    mybatis-防止sql注入
    synchronized-粗略过程
    消息队列-观察者模式和发布订阅模式区别
    复习-进程的调度算法
    Chocolatey
  • 原文地址:https://www.cnblogs.com/lingq/p/12719180.html
Copyright © 2011-2022 走看看