数据类型
关于java中的数据类型:
1、数据类型的作用是什么?
程序当中有很多数据,每一个数据都是有相关类型的,不同数据类型的数据占用空间大小不同。
数据类型的作用是知道JVM在运行程序的时候给改数据分配多大的内存空间。
2、java中的数据类型包括两种
*基本数据类型
*引用数据类型【后面说】
3、关于基本类型
*基本数据类型包括四大类八小种
第一类: 整数型
byte short int long
第二类: 浮点型
float double
第三类: 布尔型
boolean
第四类: 字符型
char
4、字符串“abc”不属于基本类型,属于引用类型,字符属于基本类型
*字符串使用双引号
*字符使用单引号
5、基本数据类型占用空间大小
基本数据类型 占用空间大小【单位:字节】
-------------------------------------------------------------------------
byte 1 -128~127
short 2 -32768~32767
int 4 -2147483648~2147483647
long 8
float 4
double 8字节
boolean 1字节
char 2字节 -65536~65535
6、计算机在任何情况下都只能识别二进制
现代的计算机底层采用交流电的方式,接通和断开就两种状态,计算机只识别1或0,其他不认识
7、什么是二进制?
*数据的一种表示形式。十进制表示满十进一原则,二进制表示满二进一原则。
8、字节:
1 Byte =8bit【1个字节=8个比特位】1个比特位表示一个二进制位:1/0
1KB=1024Byte
1MB=1024KB
1GB=1024MB
1TB=1024GB
1TB=1024 * 1024 * 1024 * 1024 * 8(bit)
9、整数型当中的byte类型,占用1个字节,所以byte类型的数据占8个bit
byte类型的取值范围是什么?
*关于java中的数字类型,数字都有正负之分,所在在数字的二进制当中有一个二进制位被称为“符号位”,并且这个“符号位”在所有二进制位的最左边,0表示正数,1表示负数。
*byte类型最大值 01111111
【00000000 00000000 00000000 10000000
减去1
00000000 00000000 00000000 01111111】
*byte类型的最大值:2的7次方 -1。结果是127
*byte类型的最小值:-128【补码反码位运算】
*byte类型取值范围:【-128~127】
*byte类型一共表示256中不同的情况
10、二进制和十进制之间的转换规则
*二进制转换成十进制:2的幂次方
*十进制转换成二进制:除以2
11、char不能用二进制表示用字符编码是人为规定的
计算机只认识二进制,那么计算机是怎么表示现实世界当中的文字的呢?
*那种基本数据类型当中byte,short,int,long,float,double这7种计算机在转换的时候比较容易,因为底层都是数据,数字和二进制之间的存在一种固定的转换规则。
*但是八种基本数据类型当中char类型表示的是显示世界中的文字,文字和计算机二进制之间“”默认“情况系是不存在任何转换关系的
*让计算机可以表示那是世界当中的文字”,我们需要进行人为的干涉,需要人为负责制定好“文字”和“二进制”之间的对照安关系,这种对照关系别成为:字符编码
*计算机最初支持英文,最先出现的字符编码是:ASCII码
'a' --> 97 按照ASCII解码 0110001 按照ASCII编码 -> 'a'
'b' -->98
'A' -->65
'0' -->48
编码和解码的时候采用同一套字典/对照表不会出现乱码
当解码和编码的时候采用的不是同一套对照表会出现乱码
1、java语言当中的“整数型字面值”别默认当做int类型类处理。要让这个“整数型字面值”别当做long类型来处理的话,需要在“整数型字面值”后面添加l/L,建议使用大写的L
2、java语言当众的整数型字面值三种表示方式:
第一种:十进制【是一种缺省默认的方式】
第二种:八进制【在编写八进制整数型字面值的时候需要以0开始】
第三种:十六进制【在编写十六进制整数型字面值的时候需要以0x开始】
int o1=10;
int o2=010;
int o3=0x10;
System.out.println(o1);
System.out.println(o2);
System.out.println(o3);

浙公网安备 33010602011771号