咱们不少时候须要去判断一个东西是否可行,而后咱们才去执行,这样一个过程在程序中用if语句来表示。express
语法数组
if (布尔表达式){服务器
//若是布尔表达式为true将执行的语句ide
}性能
那如今有个需求,公司要收购一个软件,成功了,给人支付100万元;失败了,本身找人开发。blog
这样的需求用一个if就搞不定了,咱们须要有两个判断,须要一个双选择结构,因此就有了if-else结构。开发
语法字符串
if(布尔表达式){it
//若是布尔表达式的值为trueio
}else{
//若是布尔表达式的值为false
}
咱们发现刚才的代码不符合实际状况,真实状况还可能存在ABCD,存在区间多级判断。好比90-100就是A,80-90就是B....等等,在生活中咱们不少时候的选择也不单单只有两个,因此咱们须要一个多选择结构来处理这类问题。
语法
if(布尔表达式1){
//若是布尔表达式1的值为true执行代码
}else if(布尔表达式2){
//若是布尔表达式2的值为true执行代码
}else if(布尔表达式3){
//若是布尔表达式3的值为true执行代码
}else {
//若是以上布尔表达式都不为true执行代码
}
if语句至多有1个else语句,else语句在全部的else if 语句以后。
if语句能够有若干个else if语句,它们必须在else语句以前,一旦有一个else if 语句检测为true,其余的else if 以及else语句都将跳过执行。
使用嵌套的if....else语句是合法的,也就是说你能够在另外一个if或者else if 语句中使用if或者else if 语句,你能够像if语句同样嵌套else if....else。
语法
if(布尔表达式1){
//// 若是布尔表达式1的值为true执行代码
if(布尔表达式2){
////若是布尔表达式2的值为true执行代码
}
}
多选择结构还有一个实现方式就是switch case语句。
switch case 语句判断一个变量与一系列值中某个值是否相等,每一个值称为一个分支。
匹配一个具体的值
switch语句中的变量类型能够是:
byte、short、int或者char
从Java SE 7 开始
switch支持字符串String类型了
同时case标签必须为字符串常量或字面量
语法
switch(expression){
case value :
//语句
break;//可选
case value :
//语句
break;//可选
//你能够有任意数量的case语句
default://可选
//语句
}
while循环
do....while循环
for循环
Java 5中引入一种主要用于数组的加强型for循环
while是最基本的循环,它的结构是:
while(布尔表达式){
//循环内容
}
只要布尔表达式为true,循环会一直执行下去。
咱们大多数状况是会让循环中止下来的,咱们须要一个让表达式失效的方式来结束循环。
少部分状况须要循环一直执行,好比服务器的请求响应监听等。
循环条件一直为true就会形成无限循环(死循环),咱们正常的业务编辑中应该尽可能避免死循环,会影响程序性能或者形成程序卡死崩溃。
@输出1~100
@无效代码(死循环)
@1+2+...+100=?
对于while语句而言,若是不知足条件,则不能进入循环,但有时候咱们须要即便不知足条件,也至少执行一次。
do....while循环和while循环类似,不一样的是,do...while循环至少会执行一次。
do{
//代码语句
} while(布尔表达式);
while和do...while的区别
while先判断后执行,do...while是先执行后判断!
Do....while老是保证循环体会被至少执行一次,这是他们的主要差异。