Java数据类型

免责说明:java基础资料均来自于韩顺平老师的《循序渐进学Java零基础》教案,具体视频内容可以去B站观看,这些资料仅用于学习交流,不得转载用于商业活动

1.数据类型

每一种数据都定义了明确的数据类型,在内存中分配大小不同的内存空间(字节)

8大基本数据类型

  • 整数类型:存放整数
    • byte,1个字节
    • short,2个字节
    • int,4个字节(默认)
    • long,8个字节
  • 浮点类型(小数)
    • float,4个字节
    • double,8个字节(默认)
  • 字符型:char,2个字节
  • 布尔型:boolean,1个字节,存放true和false

引用数据类型

  • 类:class
  • 接口:interface
  • 数组:[]
  • 枚举:enum
  • 注解: @XXX
  • 字符串:String

2.整数类型

1 byte num1=18;
2 short num2=18;
3 int num3=18; //4个字节
4 long num4=18; //8个字节

 说明:

  • Java各整数类型又固定的范围和字段长度,不受具体操作系统的影响,以保证Java程序的可移植性
  • Java的整型常量(字面量,具体数值)默认为int型,声明long类型常量需要在后面加上"l"或者“L”
  • bit:计算机中最小存储单位。
  • byte:计算机中基本存储单元1byte=8bit

3.浮点类型

 说明:

  • 关于浮点数在机器中存放形式的简单说明,浮点数=符号位+指数位+尾数位
  • 尾数部分可能丢失,造成精度损失(小数都是近似值)
  • 与整数类型类似,Java浮点类型也有固定的范围和字段长度,不受操作系统影响,float是4个字节,double是8个字节
  • Java的浮点型常量默认为double型,声明floar型常量,后面需要加“f”或者“F”
  • 浮点型常量有两种表示形式
    • 十进制数形式:5.12 ,512.0F,.512(必须有小数点)
    • 科学计数法形式:5.12e2【5.12*10的2次方】 5.12E-2 【5.12/10的二次】
  • 通常情况下,应该使用double类型,因为他比float更精确

4.字符类型

字符类型可以表示单个字符,字符类型是char,char是两个字节(可以存放汉字),多个字符我们使用字符串String

char c1='a';
char c2='\t';
char c3='中'
char c4=97;
char c5='a'+2

说明:

  • 字符常量是用单引号(' ')引起来的单个字符
  • java中还允许使用转义字符'\'来讲其后的字符转变为特殊字符型常量。如 '\n'表示换行符
  • 在Java中char的本质是一个整数,在输出时,是unicode码对应的字符
  • 可以直接给char赋值一个整数,然后输出时,会按照对应的unicode字符输出。如97对应字符a
  • char类型是可以进行运算的,相当于一个整数,因为它都对应有unicode码

4.2 字符编码表

ASCII编码表:一个字节表示,一共128个字符,实际上一个字节可以表示256(一个字节8位 就是2的8次方)个字符,只用了128个

Unicode编码表:固定大小的编码,使用两个字节来变色字符,字母和汉字同一都占用两个字节,这样浪费空间

utf-8编码表:大小可变的编码,字母使用1个字节,汉字使用3个字节

gbk编码表:可以变色汉字,而且范围广,字母使用1个字节,汉字使用2个字节

gb2312编码表: 可以表示汉字,gb2312<gbk

big5码:繁体中文

4.2.1 ASCII码

上世纪60年代,美国制定了一套字符编码(使用一个字节),对英语字符与二进制位之间的关系,做了统一规定。被称为ASCII码。

ASCII码一共规定了128个字符的编码,只占用了一个字节的后面7位,最前面的1位统一规定为0.

特别提示:一个字节可以表示256个字符,ASCII码只用例128个字符

缺点:不能表示所有字符

4.2.2 Unicode编码

好处:将世界上所有的符号都纳入其中。每一个符号都给予一个独一无二的编码,使用Unicode没有乱码的问题

缺点:一个英文字母和一个汉字都占用2个字节,这对于存储空间来说是浪费

2的16次方是65536,所有最多编码是65536个字符

编码0-127的字符是与ASCII的编码一样。比如'a' 在ASCII码是0X61,在unicode码是0X0061,都对应97.因此unicode码兼容ASCII码

4.2.3 UTF-8编码

 UTF-8是在互联网上使用最广的一种Unicode的实现方式(改进型)

UTF-8是一种变长的编码方式。它可以使用1-6个字节表示一个符号,根据不同的符号而变化字节长度

使用大小可变的编码 字母占1个字节,汉字占3个字节

5.布尔类型:boolean

基本介绍

布尔类型数据只允许取值true和false,无null

布尔类型占用1个字节

布尔类型适用于逻辑运算

posted @ 2023-12-07 17:09  万溪汇海  阅读(6)  评论(0编辑  收藏  举报