1、数据类型的作用是什么?
程序当中有很多数据,每一个数据都是有相关类型的,不同数据类型的数据占用空间大小不同。
数据类型的作用是指导JVM在运行程序的时候给该数据分配多大的内存空间。
2、Java中的数据类型包括两种:
*基本数据类型
*引用数据类型拍【后面讲】
-类
-接口
-数组
.........
3、关于基本数据类型:
*基本数据类型包括四大类八小种:
第一类:整数型
byte,short,int,long
第二类:浮点型
float,double
第三类:布尔型
boolean
第四类:字符型
char
4、字符串"abc"不属于基本数据类型,属于“引用数据类型”:
*字符串使用双引号"abc"
*字符使用单引号' a '
5、八种数据类型各自占用空间大小是多少?
基本数据类型 占用空间大小【单位:字节】
----------------------------------------------------------------------
byte 1
short 2
int 4
long 8
float 4
double 8
boolean 1
char 2
6、计算机在任何情况下都只能识别二进制。例如:只认识1010101010101010101..............
【现在的计算机底层采用交流电的方式,接通和断开就两种状态,计算机只识别1或0,其他的不认识】
7、什么是二进制?
*数据的一种表达形式。十进制表示满十进一的原则。二进制表示满二进一的原则。
例如:十进制
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
例如:二进制
0 1 10 11 100 101 110 111 1000 1001......
0 1 2 3 4 5 6 7 8 9
8、字节(byte):
1 Byte=8 bit 【一个字节=8个比特位】1个比特位表示一个二进制位1/0
1 KB= 1024 Byte
1 MB= 1024 KB
1 GB=1024 MB
1 TB=1024 GB
1 TB=多少个二进制位?
1 TB= 1024*1024*1024*1024*8
9、整数型byte类型,占用1字节,所以byte类型的数据占用8个比特位。那么byte类型取值范围是什么?
*关于Java中的数字类型,数字都是有正负之分的,所以在数字的二进制当中有一个二进制位别称为''符号位" 。并且这个"符号位" 在所有二进制位的最左边,0表示正数1表示负数。
*byte类最大值:0111111
【00000000 00000000 00000000 10000000(二进制)
减去1结果是:、
00000000 00000000 00000000 01111111 (二进制)
】
byte类型最大值:2的7次方-1,结果是127
byte类型最小值:-128【具体的怎么用二进制表示,这个和原码、反码、补码有关】
byte类型取值范围:[-128~127]
byte类型可以表示256个不同的数字【256个不同的二进制】
10、二进制和十进制转换规则:
*二进制转换成十进制
*十进制转换成二进制
11、计算机只认识二进制,那么二进制是怎么表示现实世界当中的文字的呢?
*八种基本数据类型当总,byte,short,int,long,float,double,boolean这7种数据类型计算机在表示的时候比较容易,因为底层都是数字,十进制的数字和二进制之间存在一种固定的转换规则。
*但是八种基本数据类型当中char类型表示现实世界的文字,文字和计算机二进制"默认" 情况下是不存在任何转换关系的。
*为了让计算机可以表示现实世界当中的文字,我们需要进行人为的干涉,需要人负责提前好"文字"和"二级制"之间的对照关系。这种对照转换关系被称为:字符编码。
*计算机最初只支持英文,最先出现的字符编码是:ASCII码
'a' ——>97 【01100001】
'A' ——>65
'0' ——>48
'a' --(按照ASII解码)—>01100001
01100001_——按照ASSII编码——>'a'
编码和解码的时候采用同一套字典/对照表,不会出现乱码。
当解码和编码的时候采用的不同一套对照表,会出现乱码问题。
总结今天的内容:
*classpath
*注释
*publicclass和class区别
*标识符
*关键字
*字面值
*变量
*数据类型
---------------------------------------------------------------------------------------------------------------------------------
classpath配置