一、顺序结构
Java的基本结构就是顺序结构,除非特别指明,否则就是自上而下执行。顺序结构是任何一个算法都离不开的一种基本算法结构
二、选择结构
1、if单选择结构
语法:
if(布尔表达式){
// 如果布尔表达式为true将执行的语句
}
2、if双选择结构
语法:
if(布尔表达式){
// 如果布尔表达式为true将执行的语句
}else{
// 如果布尔表达式为false将执行的语句
}
3、if多选择结构
语法:
if(布尔表达式1){
// 如果布尔表达式1为true将执行的语句
}else if(布尔表达式2){
// 如果布尔表达式2为true将执行的语句
}else if(布尔表达式3){
// 如果布尔表达式3为true将执行的语句
}else{
// 如果以上都不成立执行代码
}
4、switch多选择结构
switch case 语句判断变量与一系列值是否相等,每个值称为一个分支
语法:
三、循环结构
1、while循环
语法结构:
while(布尔表达式){
// 循环内容
}
//1到100累加
int i = 0;
int sum = 0;
// 表达式为true时向下执行
while(i<=100){
sum = sum + 1;
i++;
}
System.out.println(sum); // 5050
// 若循环条件一直为true就会造成死循环,会影响程序性能或造成程序卡死崩溃
2、do…while循环
对于while语句而言,如果不满足条件,则不能进入循环。当需要即使不满足条件也要执行一次时,可选择do…while实现。
语法结构:
do{
//代码语句
}while(布尔表达式);
//1到100累加
int i = 0;
int sum = 0;
// 限制性再判断
do{
sum = sum + 1;
i++;
}while(i<=100);
System.out.println(sum); // 5050
while与do…while区别:
- while先判断后执行,dowhile是限制性后判断
- dowhile总是保证循环体会至少执行一次
3、for循环*
语法结构:
for(初始化; 不二表达式; 更新){
//执行代码
}
/*while写法与for写法*/
int a = 1; // 初始化条件
while(a<=100){ // 条件判断
System.out.println(a); // 循环体
a+=2; // 迭代
}
System.out.println("while循环结束!");
// 初始化/条件判断/迭代
for(int i = 1; i <= 100; i++){
System.out.println(i);
}
System.out.println("for循环结束!");
/*
关于for:
最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
然后,检测布尔表达式的值。如果为true循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。
再次检测布尔表达式,魂环执行上面的过程。
*/
// 死循环
for( ; ; ){}
示例:九九乘法表
for(int i = 1; i <= 9; i++){
for(int j = 1; j <= i; j++){
System.out.print(j + "*" + i + "=" + (j*i) + "\t");
}
System.out.println();
}
4、增强for循环
int[] number = {10,20,30,40,50};
// 遍历数组元素
for(int x : number){
System.out.println(x);
}
5、break、continue、goto
- break用于强行退出循环,不执行循环中剩余的语句。
- continue用于终止某次循环,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
- goto并未在Java正式使用。可通过带标签的break和continue关键字达到相同效果。
// 打印质数101-150
// 加上标签 outer
outer:for(int i = 101; i < 150; i++){
for(int j = 2; j<i/2 ; j++){
if(i % j == 0){
continue outer; // 直接跳到外层outer
}
}
System.out.print(i+" ");
}
上一篇:Java_用户交互Scanner
下一篇:Java_方法