常量
1、概念:在程序的运行过程中,不会发生改变的数据 10
2、分类:
按照数据类型:
基本数据类型:表示的数据有指定几种
整数类型:10 20 -100 -200
小数类型:所有的小数 12.34 -12.34
字符类型:使用单引号引起来的单个符号 ‘a’ ‘c’ ‘ ’
布尔类型:true / false
引用数据类型
字符串类型:使用双引号引起来的0、1、多个符号 “Hello World” “ ” “a” “”
空常量:不表示任何数据 null
变量
1、概念:在程序的运行过程中,可以发生改变的数据
2、定义格式:
数据类型 变量名 = 值;
3、说明:
(1)数据类型:指定给该变量在内存中分配多大的空间
(2)变量名:给该变量起一个名字来表示。小驼峰命名法
(3)=:赋值符号
(4)值:需要保存的数据
4、为什么定义变量:
在程序中如果想要表示一个具有特殊含义的数据,这些数据可以不断发生变化,比如: 年龄、身高、体重。只能通过变量表示,以后想要修改这些值是可以的。
5、总结:
(1)定义变量,在内存中就会开辟一段空间
(2)给变量赋值,将数据存储在空间中
(3)访问变量,将空间存储的数据取出
(4)修改变量,将空间中原有的数据进行替换
变量的注意事项
1、变量的定义是有作用域的
作用域:变量起作用的范围 大括号
2、在同一个作用域中变量名不能重复定义
3、变量必须先赋值后使用
4、变量的定义和赋值可以分开书写
5、如果需要同时定义多个相同类型的变量,可以在一行定义
数据类型
1、概念:数据类型为了表示给变量在内存中分配空间。
Java语言是一个强类型语言,在定义一个变量的时候,需要强制的指定给该变量 分配多大的内存空间。
2、分类:
基本数据类型:
整数类型:所有的整数
byte 1字节 -128----127
short 2字节 -32768—32767
int 4字节 -2147483648—2147483647
long 8字节 -2^63 ~2^63-1
小数类型:所有的小数
float 4字节 单精度 >long
double 8字节 双精度 >float
字符类型:
char 2字节
布尔类型
boolean true/false
数据类型中的默认类型
1、整数的默认数据类型:int
如果想要表示一个long类型的大范围的整数,在数字的后面加一个L
2、小数的默认数据类型:double
如果想要表示一个单精度的小数,在小数的后面加一个F
数据类型转换之隐式转换
1、当小范围类型的数据和大范围类型的数据进行运算时,会先将小范围类型的数据转为大 范围类型,再运算。结果还是一个大范围类型。
byte < char < short < int < long < float < double
2、如果byte 、short 、int 、char运算时,统统转为int类型,而不是大范围类型
数据类型转换之强制转换
1、概念:将某一个数据类型的数据强制转换为其他数据类型
2、格式:
转之后的数据类型 变量名 = (需要转为的数据类型)数据;
3、注意事项:
如果将某一个大范围的数据强制转为一个小范围类型,可能发生数据的丢失
如果知道接收不了,仍然强转,没有意义
数据的进制
1、数据:用来表示值的的符号
2、进制:数据进位的制度
3、常见的进制:
二进制、八进制、十进制、十六进制
4、进位的制度:
二进制:每一位由0和1组成 逢二进一
0,1,10,11,100,101,110,111
八进制:每一位由0-7组成 逢八进一
0,1,2,3,4,5,6,7,10,11,12,13,14,15,16,17,20…77,100
十进制:每一位由0-9组成 逢十进一
0,1,2,3,4,5,6,7,8,9,10…
十六进制:每一位由0-9abcdef 逢十六进一
0,…9,a,b,c,d,e,f,10…af,b0,…ff,100
5、在程序中表示各个进制数据的方式:
二进制:0b数据
八进制:0数据
十进制:数据
十六进制:0x数据
其他进制转为十进制
1、转换的口诀:
系数∗基数的权次幂求和系数*基数的权次幂 求和系数∗基数的权次幂求和
2、说明:
系数:各个位上的值是多少,系数就是多少
1001 系数分别是:1 0 0 1
基数:当前数据是几进制,基数就是几
100是一个二进制的数据,基数:2
100是一个八进制的数据,基数:8
100是一个十六进制的数据,基数:16
权:表示数据各个位的重要程度的表示。权从右往左从0开始依次递增
1001:从右往左
3、验证:
13579:当做十进制,转为十进制
9∗100+7∗101+5∗102+3∗103+1∗104=9+70+500+3000+10000=13579 9*10^0 + 7*10^1 + 5*10^2 + 3*10^3 + 1*10^4
= 9 + 70 + 500 + 3000 + 10000
= 135799∗100+7∗101+5∗102+3∗103+1∗104=9+70+500+3000+10000=13579
4、二进制转为十进制:
10101:1∗20+0∗21+1∗22+0∗23+1∗24=1+0+4+0+16=2110101: 1*2^0 + 0 *2^1 + 1*2^2 + 0*2^3+1*2^4
=1+0+4+0+16
=2110101:1∗20+0∗21+1∗22+0∗23+1∗24=1+0+4+0+16=21
5、八进制转为十进制:
37:7∗80+3∗81=7+24=3137:7*8^0 + 3*8^1
= 7 +24
=3137:7∗80+3∗81=7+24=31
6、十六进制转为十进制:
1cf:4631cf:4631cf:463
十进制转为其他进制
1、口诀:除基倒取余
2、说明:
除:除法运算
基:要转为几进制,基就是几
取余:两个数相除,获取余数。
倒取余:从下往上取每次相除的余数
3、图示:
4、注意事项:
(1)转为几进制,除以几
(2)当除到商为0,结束
(3)反过来,从下往上取每次相除的余数