一、常量
表示一个恒久不变的量,看到的和运行输出的内容是一样的。
分类:字面值常量
自定义类型(面向对象中final)
字面值:数值型(整数、浮点数)
非数值型(字符、字符串、布尔值、null)
二、进制和进制转换
进制:逢几进一,计算机中java语言中:二进制、八进制、十进制、十六进制
二进制:0和1组成,0b开头
八进制:0-7组成,0开头
十六进制:0-9数字和A-F字母,0x开头
进制的转换,二进制向八进制,从右向左,每三个一组,计算成相应的十进制,拼接十进制数据
二进制向十六进制,从右向左,每四个一组,计算成相应的十进制,拼接十进制数据
二进制(也可以用于其它进制)向10进制:位权展开法
位权展开发:
基数:进制数
系数:当前这位数字本身值
权数:从向左,自增1,从0开始
公式=系数乘以基数的权次幂
十进制向其他进制的转换:
除法,求余数的反转
快速的8421码:
其他类型向二进制转换,减法进行8421码转换
如果给一个二进制数据0b11011010做加法,进行二进制转换,把每位为1位数对应的十进制做加法
三、变量和数据类型
变量有组成格式的:数据类型 变量名(标识符、起名字) = 初始值
变量的数据类型有:
整数类型:byte 1字节
short 2字节
int 4字节 默认整数
long 8字节
浮点数类型:float 4字节
double 8字节 默认类型
字符类型:char 2字节(java语言中char类型采用unuicode编码)
布尔类型:boolean1字节
四、数据类型转换
隐式类型转换(自动类型提升)
byte --- short ---int --- long --- float --- double
最小 较小 默认 较大 更大 最大(老大了)
char
较小
根据当前图表,找到int左侧的数据类型,就是会自动提升到int的隐式转换类型。byte、short、char之间不能相互转换,统一转换成int
小数据类型向大数据类型转换,如果有四种int、long、float、double,一定会转换成double
强制类型转换
不是自动的,需要手动转换,大数据类型向小数据类型转换(精度丢失)
格式:目标类型 变量名 = (目标类型)(原数值)
+的不同用法:
表示一个正号,例如:+7
可以做加法操作:例如5+5
还可以做字符串的连接:如果是有字符串和其他类型数据做加法,结果必定是字符串类型(字符串的拼接)
五、运算符(掌握)
算数运算符:+、-、*、/、%
自增和自减:
不能用于常量,只能用于变量
如果是单变量做++、--,放前放后效果相同
如果是有其他操作(赋值)做++、--放前放后有区别(前置是先加1减1,再做操作。后置是先做操作,然后再加1减1)
赋值运算符:
基本类型:=,在java程序中=表示的含义是赋值,==才是判断
扩展类型:+=、-=、*=、/=、%=,表示对当前的变量做自身的相应操作
例如 int x = 10,x += 20;对自身的变量x做加法(加等号右边的数值)
关系运算符(比较运算符):
>、<、>=、<=、==、!=
结果一定是一个布尔类型
>=、<=满足其一就是true