Java基础系列之三
Posted reaper-kd
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础系列之三相关的知识,希望对你有一定的参考价值。
- 六、运算符
- 比较运算符
1、比较运算符的结果都是boolean型,也就是要么是true,要么是false。
2、比较运算符“==”不能误写成“=”。
class OperatorDemo public static void main(String[] args) System.out.println( 3 > 2 );//true System.out.println( 3 == 2 );//false
- 逻辑运算符
逻辑运算符用于连接两个boolean类型的表达式。
"&"符号运算规律:
运算的两边只要有一个是false,结果肯定是false。
只有两边都为true,结果才是true。
"|"符号运算规律:
运算的两边只要有一个是true,结果肯定是true。
只有两边都为false,结果是false。
"^"符号运算规律:
^符号的两边结果如果相同,结果是false。
两边的结果不同,结果是true。
"!"符号运算规律:
!true=false
!false=true
!!true=true
P.S.
&&:和&运算的结果是一样的,但是运算过程有点小区别。
&:无论左边的运算结果是什么,右边都参与运算。
&&:当左边为false时,右边不参加运算,这样可以提升效率。
||:和|运算的结果是一样的,但是运算过程有点小区别。
|:无论左边的运算结果是什么,右边都参与运算。
||:当左边为true时,右边不参加运算,这样可以提升效率。
使用&&和||比使用&和|更高效一些。
逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3&x<6。
- 位运算符
与运算例子:
6&3=2
110
& 011
-------
010
常见的面试题:
最有效率的方式算出2乘以8等于几?
答:2 << 3
- 三元运算符
格式:
(条件表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2。
// 取三个数中最大的
class OperatorDemo public static void main(String[] args) int o = 4,p = 5,q = 10; int temp = o > p ? o : p; int max = temp > q ? temp : q; System.out.println( max );//10
- 七、程序流程控制
- 判断结构
if语句
格式一: if(条件表达式) 执行语句; 格式二: if(条件表达式) 执行语句; else 执行语句; 格式三: if(条件表达式) 执行语句; elseif(条件表达式) 执行语句; …… else 执行语句;
- 选择结构
switch语句
格式: switch(表达式) case取值1: 执行语句; break; case取值2: 执行语句; break; …... default: 执行语句; break;
switch语句特点:
1、switch语句选择的类型只有四种:byte,short,int,char。从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
2、case与default没有顺序。先执行第一个case,没有匹配的case执行default。
3、结束switch语句的两种情况:①遇到break,②执行到switch语句结束。
4、如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇
到break或者switch结尾结束。
5、进入switch语句后,执行顺序是先执行case,然后从上到下,最后再执行default。即使default放在case
上面,执行顺序也不变。
public class Test public static void main(String args[]) //char grade = args[0].charAt(0); char grade = ‘C‘; switch(grade) case ‘A‘ : System.out.println("优秀"); break; case ‘B‘ : case ‘C‘ : System.out.println("良好"); break; case ‘D‘ : System.out.println("及格"); break; case ‘F‘ : System.out.println("你需要再努力努力"); break; default : System.out.println("未知等级"); System.out.println("你的等级是 " + grade); //良好 //你的等级是 C
对于几个固定的值判断,建议使用switch语句,因为switch语句会将具体的答案都加载进内存,效率相对高。
- 循环结构
格式1 while(条件表达式) 执行语句; 格式2 do 执行语句; while(条件表达式); while和dowhile的区别: dowhile语句的特点:无论条件是否满足,循环体至少执行一次。 while如果条件不满足,循环体一次都不会执行。
格式3
for语句格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式)
执行语句;(循环体)
最简单无限循环格式:while(true),for(;;),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环。
- 其他流程控制语句
break(跳出),continue(继续)
break语句:
应用范围:选择结构和循环结构。
continue语句:
应用范围:循环结构。
continue语句是结束本次循环继续下次循环。
以上是关于Java基础系列之三的主要内容,如果未能解决你的问题,请参考以下文章