zoukankan      html  css  js  c++  java
  • java的基本数据类型和引用数据类型

    Java语言提供了八种基本数据类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
    byte:
    byte 数据类型是8位、有符号的,以二进制补码表示的整数;
    最小值是 -128(-2^7);
    最大值是 127(2^7-1);
    默认值是 0;
    byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;
    例子:byte a = 100,byte b = -50。
    short:
    short 数据类型是 16 位、有符号的以二进制补码表示的整数
    最小值是 -32768(-2^15);
    最大值是 32767(2^15 - 1);
    Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;
    默认值是 0;
    例子:short s = 1000,short r = -20000。
    int:
    int 数据类型是32位、有符号的以二进制补码表示的整数;
    最小值是 -2,147,483,648(-2^31);
    最大值是 2,147,483,647(2^31 - 1);
    一般地整型变量默认为 int 类型;
    默认值是 0 ;
    例子:int a = 100000, int b = -200000。
    long:
    long 数据类型是 64 位、有符号的以二进制补码表示的整数;
    最小值是 -9,223,372,036,854,775,808(-2^63);
    最大值是 9,223,372,036,854,775,807(2^63 -1);
    这种类型主要使用在需要比较大整数的系统上;
    默认值是 0L;
    例子: long a = 100000L,Long b = -200000L。"L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。
    float:
    float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;
    float 在储存大型浮点数组的时候可节省内存空间;
    默认值是 0.0f;
    浮点数不能用来表示精确的值,如货币;
    例子:float f1 = 234.5f。
    double:
    double 数据类型是双精度、64 位、符合IEEE 754标准的浮点数;
    浮点数的默认类型为double类型;
    double类型同样不能表示精确的值,如货币;
    默认值是 0.0d;
    例子:double d1 = 123.4。
    boolean:
    boolean数据类型表示一位的信息;
    只有两个取值:true 和 false;
    这种类型只作为一种标志来记录 true/false 情况;
    默认值是 false;
    例子:boolean one = true。
    char:
    char类型是一个单一的 16 位 Unicode 字符;
    最小值是 u0000(即为0);
    最大值是 uffff(即为65,535);
    char 数据类型可以储存任何字符;
    例子:char letter = 'A';。
    
    引用类型:
    
    1.数组
    
    2.接口
    
    3.封装对象(类)
    
    存储原理:
    1)基本数据类型的存储原理:所有的简单数据类型不存在“引用”的概念,基本数据类型都是直接存储在内存中的内存栈上的,数据本身的值就是存储在栈空间里面,而Java语言里面八种数据类型是这种存储模型;
    
    2)引用类型的存储原理:引用类型继承于Object类(也是引用类型)都是按照Java里面存储对象的内存模型来进行数据存储的,使用Java内存堆和内存栈来进行这种类型的数据存储,简单地讲,“引用”是存储在有序的内存栈上的,而对象本身的值存储在内存堆上的;
    
  • 相关阅读:
    JavaScript中的闭包
    SQL 备忘
    SqlServer 2005 升级至SP2过程中出现"身份验证"无法通过的问题
    unable to start debugging on the web server iis does not list an application that matches the launched url
    Freebsd 编译内核
    Freebsd 6.2中关于无线网络的设定
    【Oracle】ORA01219
    【Linux】Windows到Linux的文件复制
    【Web】jar命令行生成jar包
    【Linux】CIFS挂载Windows共享
  • 原文地址:https://www.cnblogs.com/yuqiliu/p/12115154.html
Copyright © 2011-2022 走看看