java语言基础--数据类型
关于java中的数据类型:
1、数据类型的作用是什么?
程序当中有很多数据,每一个数据都是有相关类型的,不同数据类型的数据占用空间大小不同。
数据类型的作用是指导JVM在运行程序的时候给该数据分配多大的内存空间。
2、java中的数据类型包括两种:
- 基本数据类型
- 引用数据类型:
-类
-接口
-数组
....
3、关于基本数据类型:
- 基本数据类型包括四大类八小种:
第一类:整数型
第二类:浮点型
第三类:布尔型
第四类:字符型
八小种: byte,short,int,long,float,double,boolean,char
4、字符串String不属于基本数据类型范畴,属于引用数据类型
java中除了基本数据类型,剩下的都是引用数据类型
5、8种基本数据类型中
整数型:byte,short,int,long有什么区别?
浮点型:float,double有什么区别?
区别:占用空间大小不同
八种基本数据类型各自占用空间大小是多少?
基本数据类型 占用空间大小【单位:字节】
byte 1
short 2
int 4
long 8
float 4
double 8
boolean 1
char 2
6、什么是二进制?
数据的一种表现形式。十进制满十进一原则,二进制满二进一原则。
二进制转换十进制
8 4 2 1
十进制转换二进制
短除法:除以二,然后余数逆序输出
7、计算机的存储单位
计算机在任何情况下都只能识别二进制。例如:只认识101010101.....
【现代的计算机底层采用交流电的方式,接通和断开就两种方式,计算机只识别1或0,其它不认识】
字节(byte)
1 Byte=8 bit【1个字节=8个比特位】 1个比特位表示一个二进制位:1或者0
1 KB=1024 Byte
1 MB=1024 KB
1 GB=1024 MB
1 TB=1024 GB
1TB=1024*1024*1024*1024*8;//1个TB能存储多少1和0?
byte b = 2;在计算机中是这样表示的:00000010
short s = 2;在计算机中是这样表示的:00000000 00000010
int i = 2;在计算机中是这样表示的:00000000 00000000 00000000 00000010
...
8、整数型当中的byte类型,占用一个字节,所以byte类型的数据占用8个比特位。那么byte类型的取值范围是?
关于java的数字类型,数字都是有正负之分的,所以在数字的二进制当中有一个二进制位被称为“符号位”,并且这个符号位在所有二进制位的最左边,0表示正数,1表示负数。
byte类型最大值:01111111
【
00000000 00000000 00000000 10000000(二进制)
减去1结果是:
00000000 00000000 00000000 01111111(二进制)
】
byte类型最大值:2的7次方 -1 ,结果是:127
byte类型最小值:-128
(1个字节)byte类型取值范围:-128 ~ 127
(2个字节)short :[-32768 ~ 32767] 可以表示65536个不同的数字
(4个字节)int:[-2147483648 ~ 2147483647]
(2个字节)char:[0 ~ 65535] 可以表示65536个不同的数字
short和char实际上容量相同,不过char可以表示更大的数字。因为char表示的是文字,文件没有正负之分,所以char可以表示更大的数字。
byte类型可表示256个不同的数字,则可表示256个不同的二进制
9、字符编码
计算机最初只支持英文,最先出现的字符编码是:ASCII码
'a'-->97【01100001】
'A'-->65
'0'-->48
'a' --(按照ASCII解码)-->01100001
01100001---按照ASCII编码-->'a'
解码和编码的时候采用同一套字典/对照表,不会出现乱码。
当解码和编码的时候采用的不是同一套对照表,会出现乱码问题。