结构
顺序结构
选择结构
If选择结构
if (布尔表达式) {
//布尔值为真
} else {
//布尔值为假
}
if多选择
if (布尔表达式1) {
//1为真
} else if (布尔表达式2) {
//2为真
} else if (布尔表达式3) {
//3为真
} else {
//都为假
}
嵌套的If结构
if (){
if(){
}
}
switch多选择结构
- switch case 语句判断一个变量与一系列值中某个值是否相等,每个值成为一个分支。
switch (expression) {
case value :
//语句
break;
case value : break;
default :
}
-
switch语句中的变量类型可以是:
- byte、short、int或者char
- 从Java SE7开始
- switch支持字符串String类型
- 同时case标签必须为字符串常量或字面量
-
每个对象都自己的hash code,通过特定算法生成,字符本质还是数字,都有对应的hash值,判断hash值是否相等
循环结构
- while循环
- do …while循环
- for循环
while (布尔表达式) {
//循环体
}
-
只要布尔表达式为true,循环就会一直执行下去
-
大多数情况是会让循环停下,我们需要一个使表达式失效的方式来结束循环
-
少部分情况需要循环一直执行,比如服务器的请求响应监听等
-
循环条件一直为true就会造成无限循环(死循环),正常业务编程中应该尽量避免死循环。避免影响程序性能或造成程序卡死崩溃
-
计算:1+2+3+…+100=?
do…while循环
- do…while与while相似,但while进入循环需要条件,而do…while至少会执行一次。
do {
//daima
} while (布尔表达式);
for循环
-
for循环使循环结构变得更加简单
-
for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。
-
for (初始化; 布尔表达式; 更新) { //代码语句 }
-
练习1:计算0到100之间的奇数和偶数的和
-
练习2:用while或for循环输出1-1000之间能被5整除的数,并且每行输出3个数
-
练习3:打印九九乘法表
增强for循环
-
多在数组中使用
-
Java5引入了一种主要用于数组或集合的增强型for循环
-
Java增强for循环语法格式:
-
for (声明语句:表达式) { //代码语句 }
-
声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
-
表达式:表达式是要访问的数组名,或者是返回值为数组的方法
break&&continue
- break在任何循环语句的主体部分,均可用break控制循环的流程,break用于强行退出循环,不执行循环中的剩余的语句。(break也用于switch语句中)
- continue语句用在循环体语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
关于goto关键字
- goto关键字很早就在程序设计语言中出现,尽管goto仍是Java的一个保留字,但并未在语言中的到正式使用;Java中没有goto。然而在break和continue这两个关键字上,仍能看到goto的一些影子—带标签的break和continue。
- "标签"是指后面加一个冒号的标识符,例如:label:
- 对Java来说唯一用到标签的地方是在循环语句之前。而在循环之前设置 标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,当若随同标签使用,他们就会中断到存在标签的地方。