标签:java 位运算 循环
逻辑运算符用于连接两个boolean类型的值:
& 与 | 或 ^ 异或 || 短路或 &&短路与 !非(一元运算符)
位运算的运算符:
>>右移 >>>无符号右移 <<左移(相当于乘以2的n次幂)
&按位与 |按位或 ^按位异或 ~按位取反
说明:一个数异或同一个数两次 则结果还是这个数
当涉及到2的n次幂的运算的时候,全都用移位来运算,移位比正常算乘法效率高
交换两个数的值:
方法一 a=a+b b=a-b a=a-b
方法二 a=a^b b=a^b a=a^b
不推荐用第一种方法,因为第一种方法如果数比较大的话,很可能超出整型的运算范围
三元运算符:
格式 ---(条件表达式)?表达式1:表达式2;
如果条件为真,则结果为表达式1,否则结果为表达式2的值
例如:z=a>b?b:a;
说明:当使用三元运算符时,必须有一个明确的返回结果,否则还是使用通吃的if else 结果比较好
程序流程控制:
顺序结构 判断结构 分支结构 循环结构
局部代码块:
可以再代码中在局部代码块中重定义变量以屏蔽全局变量(要先理解作用域的概念)
switch语句,break可以跳出switch:
格式如下:
switch(表达式){
case 取值:
执行语句
break
case 取值:
执行语句
break
default:
执行语句
}
if和switch的应用场合:
1. if语句适合的场景如下:
1).对具体的值进行判断
2).对区间进行判断
3).对运算结果是boolean类型的表达式进行判断
2. switch语句的应用场景如下:
1).对具体的值进行判断
2).值的个数通常是固定的
对于几个固定的结果,建议使用switch语句,因为switch语句会将所有结果一次性
加入内存,执行效率比较高.
注意:实际上,switch语句很少使用,并且功能都能被if语句代替
循环程序while、do while and for循环:
1. while循环
1). 直到条件为假的时候,或者遇到break语句结束循环
2. do while
1). 直到条件为假的时候,或者遇到break语句结束循环
注意:do while循环结尾有分号
3. for循环
1). (初始化参数;条件表达式;操作表达式){}
2). for(Sop("Please input an number: ",int x=1;x<10;Sop(x),x++))
说明:初始化参数只执行一次
for和while的特点:
1. for和while完全可以互换
2. 格式上的不同,在使用上有点小区别,如果需要通过变量来对循环进行控制,该变量只作
为循环增量存在时,那么区别就出现了,用for可以实现,while就不可以
3. for(;;){}此即为死循环
本文出自 “Keyman” 博客,请务必保留此出处http://keyman.blog.51cto.com/9807984/1676573
标签:java 位运算 循环
原文地址:http://keyman.blog.51cto.com/9807984/1676573