变量与常量
变量:内存中的一块存储区域,用来存储数据,值可以改变。
常量:内存中的一块存储区域,用来存储数据,值不可以改变。
注意:常量一般用final修饰,一般大写
基本数据类
基本数据类型
整数类型:byte、short、int、long
浮点类型:double、flout
字符类型:char
布尔类型:boolean
引用数据类型
数组、类类型(String)、接口
作用域
全局变量:在类中方法外,没有赋值可以使用
全局默认值:
整数类型默认为:0
浮点类型默认为:0.0
字符类型默认为:"\u0000"
布尔类型默认为:false
引用数据类型:string字符串 默认为 null
局部变量:在方法中,没有赋值不能被使用
变量命名问题:相同作用域下,变量名不允许重复。不同作用域下,变量名可以重复,一但重复采
用局部优先原则(也称:就近原则)。
数据类型转换
Java是一个强类型语言:同种数据类型才能够进行计算,不同数据类型需要转成相同数据类型才能够进行计算,结果也是同种数据类型。
自动类型提升:从小空间转换为大空间
转换顺序:byte、short、char → int → long → float → double
强制类型转换:从大空间转换为小空间,可能造成精度损失,需要手动转换。
运算符
算数运算符:同种运算,运算类型也是同种类型
+ 、- 、* 、/ 、%(取余)、++ 、 --
++a:++在前,先取值在相加
a++:++在后,先相加在取值
加号的用法:
可以表示正好、两个值相加表示加号,任意一侧有字符串表示字符串拼接
赋值运算:
+=、-=、*=、/=、%=
=:表示赋值运算,表示把赋值符号右测数据的赋值给左侧。
作用:自动转换类型,可以简化书写,但会造成精度损失。
比较运算符
>、<、>=、<=、==(相等)、!=(不等)
判断结果:false或true
注意:此判断结果不能够连续使用,如想连续使用,请使用逻辑运算符
逻辑运算符
&(与)、|(或)、!(非)
&:单与一般不做逻辑运算,做位运算。单与一般表示交集,同时成立才为true
&&:双与一般做逻辑运算
&与&&区别:
1.双与,又称短路与,当第一个表达式为false时,第二个表达式就不再执行
2.单与,一般做位运算,没有短路情况
false && false false
true&&false false
false&&true false
true&&true true
|:单或一般不做逻辑运算,做位运算。单或一般表示并集、或者,只有一方成立就为true
||:双或一般做逻辑运算
|与||区别:
1.双或,又称短路或,当第一个表达式位true时,第二个表达式就不再执行
2.单或,一般做位运算,没有短路情况
false && false false
true&&false true
false&&true true
true&&true true
进制
常见进制
二进制:由0和1组成 前缀:0b
八进制:由0和7组成 前缀:0
十进制:由0和9组成
十六进制:由0和9组成,10到15被abcdef代替 前缀:0x
十进制转换二进制
1.除2,直到商为0,倒序取余数
2.位权法:
①系数乘与位权之和
②位权:位权指数中,每个固定位置对应的单位值
十进制转换其它进制
1.除商取余倒序输出,转几进制就除与几,直到商为0,倒序输出。
2.权位法:系数乘该进制的位权之和
二进制与八进制的转换