首先插入一个小的知识点
自动转换类型规则
两种类型要兼容(数值类型{整型和浮点型})互相兼容
自动类型转换(隐式类型转换):小转大
强制类型转换:大转小
int c=(int)a;
Java内存
Java内存分为栈和堆
栈:一般存储基本数据类型
堆:一般存储引用数据类型
常量
程序允许的过程中值不可改变
使用final修饰
1,常量名通常全部大写
2,不同字符使用下滑线分隔
3,只能被赋值一次,通常定义时对其初始化
java运算符
赋值运算符
变量名 =表达式(符号【加号,减号】和操作数【a,4】)
算数运算符
+ | 加法 - 相加运算符两侧的值 |
---|---|
- | 减法 - 左操作数减去右操作数 |
* | 乘法 - 相乘操作符两侧的值 |
/ | 除法 - 左操作数除以右操作数 |
% | 取余 - 左操作数除以右操作数的余数 |
++ | 自增: 操作数的值增加1 |
-- | 自减: 操作数的值减少1 |
= | C = A + B将把A + B得到的值赋给C |
---|---|
+ = | C + = A等价于C = C + A |
- = | C - = A等价于C = C - A |
* = | C * = A等价于C = C * A |
/ = | C / = A,C 与 A 同类型时等价于 C = C / A |
%= | C%= A等价于C = C%A |
关系运算符
运算符 | 含义 | 例子 | 结果 |
---|---|---|---|
== | 等于 | 1==2 | false假 |
!= | 不等于 | 5!=6 | true真 |
> | 大于 | 5>6 | false假 |
< | 小于 | 5<6 | true真 |
>= | 大于等于 | 5>=6 | false假 |
<= | 小于等于 | 5<=6 | true真 |
注意
=为赋值运算符,==为等于运算符
`关系表达式的结果为布尔值
>、<、>=、<=运算符的优先级别高于==、!=
>、<、>=、<=运算符只支持数值类型的数据比较
逻辑运算符
a=true b=false
运算符 | 含义 | 运算规则 |
---|---|---|
&& | 当且仅当两个操作数都为真,条件才为真 | (A && B)假 |
|| | 如果任何两个操作数任何一个为真,条件为真 | (A ||B)真 |
! | 用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false | !(A &&B)假 |
注意:优先级别!>&&>||
条件运算符(也称为三目运算符)
布尔表达式?表达式 1:表达式 2
如果布尔表达式为真true ,则整个表达式的值为表达式一
如果布尔表达式为假false,则整个表达式的值为表达式二
运算符的优先级
单目运算符包括! ++ --,优先级别高
优先级别最低的是赋值运算符**
可以通过()控制表达式的运算顺序,()优先级最高
从右向左结合性的只有赋值运算符、三目运算符和单目运算符
算术运算符> 关系运算符> 逻辑运算符