Java中八种基本数据类型及其区别、字符编码

比眉伴天荒 2024-04-01 15:04 102阅读 0赞

一、Java中八种基本数据类型及其区别

八种基本数据类型又分成四类:

  • 整数型:byte、short、int、long (没有小数)
  • 浮点型:float、double (有小数)
  • 布尔型:boolean
  • 字符型:char

区别: 占用的空间大小不同

byte占用1个字节、short占用2个字节、int占用4个字节、long占用8个字节

float占用4个字节、double 占用8个字节

boolean占用1个字节

char占用2个字节

补充一下,除了八种基本数据类型外,还有引用数据类型,我们常使用的String就是引用数据类型

关于计算机存储单位

计算机只能识别二进制

1字节(byte)=8 bit

1 bit 就是一个1或者0(二进制)

1KB = 1024 byte

1M = 1024 KB

1GB = 1024 MB

1TB = 1024 GB

a55564a9780644518c7b3ce7f37a8b3c.png

二、字符编码

只有char和字符编码有关系

char可以存储汉字,在java中char类型占用两个字节

对于布尔类型只有两个值true和false,实际上true和false分别在C++对应的是1和0,1为true,0为false

对于char类型来说计算机表示起来比较麻烦,因为char对应的是文字,每一个国家的文字不一样,文字不能直接通过自然算法转换成二进制

所以诞生了字符编

2.1 什么是字符编码?

是人为定义的一套转换表,在字符编码中规定了一系列的文字对应的二进制

字符编码其实本质上就是一本字典,该字段中描述了文字与二进制之间的对照关系

字符编码是认为规定的

字符编码设计到编码和解码两个过程,编码和解码的时候必须采用同一套字符编码方式,不然会出现乱码

计算机最先开始支持的文字是英文,英文对应的字符编码方式是ASCII码

ASCII码采用1byte存储,英文字母一共26个(将键盘上所有的键全部算上也不超过256个,1byte可以表示256中不同的情况,所以英文本身在计算机方面就占有优势)

前提是采用ASCII解码和编码,如果不统一会出现乱码

比如 ‘a’ ——97 ‘A’——65 ‘0’——48 (这个地方的0是文字0,不是数字)

随着发展又制定了ISO-8859-1编码方式,但是不支持中文,后来发展到亚洲才支持

后来在java中采用了Unicode编码,统一了全球所有的文字,支持所有文字

具体的实现包括:UTF-8 UTF-16 BTF-32

发表评论

表情:
评论列表 (有 0 条评论,102人围观)

还没有评论,来说两句吧...

相关阅读