Java学习苦旅(四)——Java代码的三根顶梁柱

本篇博客将讲解Java中的三根顶梁柱——三大结构。

文章目录

  • 顺序结构
  • 分支结构
    • if语句
      • 语法1
      • 语法2
      • 语法3
      • 代码示例
      • 悬垂else
    • switch语句
      • 基本语法
      • 代码示例
      • 注意事项
  • 循环结构
    • while循环
      • 基本语法
      • 代码示例
    • for循环
      • 基本语法
      • 代码示例
    • do while循环
      • 基本语法
      • 代码示例
    • break
    • continue

顺序结构

顺序结构是指按照代码一行一行的读取。 例如:

System.out.println("abc");
System.out.println("def");
System.out.println("ghi");

结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第1张图片

如果调整代码的书写顺序,例如:

System.out.println("ghi");
System.out.println("def");
System.out.println("abc");

那么结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第2张图片

分支结构

if语句

语法1

if(布尔表达式) {
    //条件满足时执行代码
}

语法2

if(布尔表达式) {
    //条件满足时执行代码
} else {
    //条件不满足时执行代码
}

语法3

if(布尔表达式) {
    //条件满足时执行代码
} else if(布尔表达式) {
    //条件满足时执行代码
} else {
    //条件都不满足时执行代码
}

代码示例

int n = 5;//判断n的奇偶性
if((n % 2) == 0) {
    System.out.println("偶数");
} else {
    System.out.println("奇数");
}

结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第3张图片

悬垂else

else只与最近的未匹配的if进行匹配。 例如:

int x = 10;
int y = 0;
if (x == 10)
    if (y == 10)
        System.out.println("aaa");
else
    System.out.println("bbb");

else与if(y == 10) 匹配,所以结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第4张图片

switch语句

基本语法

switch(整数|枚举|字符|字符串){
     case 内容1 : {
         //内容满足时执行语句;
         break;
     }
     case 内容2 : {
         //内容满足时执行语句;
         break;
     }
     ...
     default:{
         //内容都不满足时执行语句;
         break;
     } 
}

注意:long类型,float类型,double类型和boolean类型不能做switch的参数。

根据 switch 中值的不同, 会执行对应的 case 语句. 遇到 break 就会结束该 case 语句。如果 switch 中的值没有匹配的 case, 就会执行 default 中的语句。

代码示例

int day = 1;
switch(day) {
    case 1:
        System.out.println("星期一");
        break;
    case 2:
        System.out.println("星期二");
        break;
    case 3:
        System.out.println("星期三");
        break;
    case 4:
        System.out.println("星期四");
        break;
    case 5:
        System.out.println("星期五");
        break;
    case 6:
        System.out.println("星期六");
        break;
    case 7:
        System.out.println("星期天");
        break;
    default:
        System.out.println("输入错误");
        break;
}

结果为:Java学习苦旅(四)——Java代码的三根顶梁柱_第5张图片

注意事项

如果上述没有break:

int day = 1;
switch(day) {
    case 1:
        System.out.println("星期一");
    case 2:
        System.out.println("星期二");
    case 3:
        System.out.println("星期三");
    case 4:
        System.out.println("星期四");
    case 5:
        System.out.println("星期五");
    case 6:
        System.out.println("星期六");
    case 7:
        System.out.println("星期天");
    default:
        System.out.println("输入错误");
        break;
}

那么结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第6张图片

因此,如果没有break,那么case语句会依次向下执行,,从而失去了多分支的效果

循环结构

while循环

基本语法

while(循环条件){ 
    //循环语句;
}

循环条件必须为布尔表达式。

循环条件为 true,则执行循环语句;否则结束循环。

代码示例

int n = 1;//打印1——10的数字
while(n <= 10) {
    System.out.println(n);
    n++;
}

结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第7张图片

for循环

基本语法

for(表达式1;表达式2;表达式3){ 
    //循环体;
}
  • 表达式1:用于初始化循环变量
  • 表达式2:循环条件(布尔表达式)
  • 表达式3:更新循环变量

代码示例

int sum = 0;//计算1——100的和
for (int i = 0; i <= 100; i++) {
    sum += i;
}
System.out.println(sum);

结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第8张图片

do while循环

基本语法

do{ 
	//循环语句; 
}while(循环条件);

先执行循环语句, 再判定循环条件。

代码示例

int n = 1;
do {
    System.out.println(n);
    n++;
}while(n <= 10);

结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第9张图片

break

break 的功能是让循环提前结束。

例如:

for (int i = 1; i <= 10; i++) {
    if(i == 3) {
        break;
    }
    System.out.println(i);
}

结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第10张图片

continue

continue 的功能是跳过这次循环, 立即进入下次循环

例如:

int n = 1;//打印1——10的奇数
while(n <= 10) {
    if(n % 2 == 0) {
        n++;
        continue;
    }
    System.out.println(n);
    n++;
}

结果为:

Java学习苦旅(四)——Java代码的三根顶梁柱_第11张图片

本篇博客到此结束。

上一篇博客:Java学习苦旅(三)——运算符

下一篇博客:Java学习苦旅(五)——方法?方法!!!

你可能感兴趣的:(Java学习苦旅)