运算符
关系运算符
(==) (!=) (>) (<) (>=) (<=)
=为赋值运算符,==为等于运算符
关系表达式的结果为布尔值
>、<、<=、>=运算符的优先级别高于==、!=
>、<、<=、>=运算符只支持数值类型的数据比较
逻辑运算符
&(与),&&(短路与) :两个操作数都是true,结果才为true
|(或),||(短路或):只要有一个true,结果就为true
!(非):操作数为true,结果为true
操作数为false,结果为false
运算规律:
&和&&的运算规律是一样的,只有当&,&&左右两边的表达式全为true时,结果才为true
|和||的运算规律是一样的,只要|,||两边的表达式中有一个为true,结果为true
!的运算规律:是将原来的结果取反,就是原来为true结果为false,反之一样
&&和&的区别
&&具有短路功能,当&&左边的表达式结果为false时,&&右边表达式不需要进行计算
&不具有短路功能,不管&左边的表达式结果为false还是true,&右边表达式需要进行计算
||和|的区别
||具有短路功能,当||左边的表达式结果为true时,||右边表达式不需要进行计算
|不具有短路功能,不管|左边的表达式结果为false还是true,|右边表达式需要进行计算
条件运算符(三元/三目运算符)
语法:
条件 ? 表达式1:表达式2;
意义:条件为真,执行表达式1,条件为假,执行表达式2
条件为布尔值
条件运算符的嵌套
格式:条件 1? (条件2?表达式1:表达式2): (条件3?表达式3:表达式4);
运算符的优先级
(1)单目运算符包括!,++,--,优先级别高
(2)优先级别最低的是赋值运算符
(3)可以通过()控制表达式的运算顺序,()优先级最高
(4)从右向左结合性的只有赋值运算符,条件运算符和单目运算符
(5)算术运算符>关系运算符>逻辑运算符
选择结构
流程控制:用来控制程序中各语句的执行顺序
顺序,循环,选择
if选择结构
语法:
if(条件){
//代码块
}
执行规则:
判断条件,若为真,执行代码块,执行完后执行if结构后面的代码
若为假,跳过if结构,执行后面的代码
复杂条件的if选择结构
使用逻辑运算符
结合运算符的优先级编写条件
(1)最高优先级:()
(2)最低优先级:=
(3)优先级:!>算术运算符>关系运算符>&&>||
(4) 复杂条件使用括号提高可读性
使用if-else选择结构
格式:
if(条件){
//代码块1
}else{
//代码块2
}
多重if选择结构
使用多重if选择语句处理问题是需要注意顺序
嵌套if选择结构
注:字符串的比较使用equals()
例: sex.equals("男");
嵌套if控制语句可以通过外层语句的内层语句的协作增强程序的灵活性