Java语言之分支结构
Posted xuweiweiwoaini
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java语言之分支结构相关的知识,希望对你有一定的参考价值。
1 流程控制语句
1.1 什么是流程控制语句
- 可以控制程序的执行流程
1.2 流程控制语句的分类
- 顺序结构
- 选择结构
- 循环结构
2 顺序结构
- 从上往下,依次进行。
3 分支结构
3.1 分支结构的分类
- if语句
- switch语句
3.2 if语句的格式
- 格式1
class IfStruct1{ public static void main(String[] args) { if(布尔表达式){ //语句体 } } }
- 格式2
class IfStruct2{ public static void main(String[] args) { if(布尔表达式){ //语句体1 }else{ //语句体2 } } }
- 格式3
class IfStruct3{ public static void main(String[] args) { if(布尔表达式1){ //语句体1 }else if(布尔表打死2){ //语句体2 }else{ //语句体3 } } }
3.3 执行流程
- 先计算比较表达式的值,看其返回值是true还是false。
- 如果是true,则执行语句体。
- 如果是false,则不执行语句体。
3.4 示例
- 格式1示例
package com.xuweiwei; public class IfDemo { public static void main(String[] args) { int x = 0; if(x ==0){ System.out.println("你好啊"); } System.out.println("世界"); } }
- 格式2示例
package com.xuweiwei; public class IfDemo { public static void main(String[] args) { int x = 2; if(x % 2 == 0){ System.out.println("是偶数"); }else{ System.out.println("是奇数"); } } }
- 格式3示例
package com.xuweiwei; public class IfDemo { public static void main(String[] args) { char c = ‘男‘; if (c == ‘男‘){ System.out.println("你是男生"); }else if(c ==‘女‘){ System.out.println("你是女生"); }else{ System.out.println("你的性别暂时不能识别"); } } }
- 示例:求三个值中的最大值
package com.xuweiwei; public class IfTest { public static void main(String[] args) { int a = 10; int b = 20; int c = 30; if(a > b){ if(a > c){ System.out.println("a="+a+"最大"); }else{ System.out.println("c="+c+"最大"); } }else{ if(b > c){ System.out.println("b="+b+"最大"); }else{ System.out.println("c="+c+"最大"); } } } }
3.5 switch语句
- 格式
switch(表达式){//表达式可以是byte short int char 枚举,JDK7新增了String case 值1: 语句体1; break; case 值2: 语句体2; break; …… default: 语句体n; break; }
- 示例:
package com.xuweiwei; public class IfTest { public static void main(String[] args) { String str = "a"; switch (str) { case "a": System.out.println("a"); break; case "b": System.out.println("b"); break; default: System.out.println("你好"); break; } } }
- 示例:给定一个整数,请输出对应的星期几?
package com.xuweiwei; import java.util.Scanner; public class IfTest { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入1-7:"); int num = input.nextInt(); if (num < 0 || num > 7) { System.out.println("抱歉,输入数字不合法"); } else { switch (num) { 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; default: System.out.println("星期天"); break; } } } }
- switch的注意事项
- ①case后面只能是常量,不能是变量,而且,多个case后面的值是不可以相同的。
- ②default是可以省略的,但是不建议。
- ③break也可以省略,但是可能会造成穿透现象。
- ④default语句不一定要在最后,但是建议在最后。
- ⑤switch语句的结束条件:1、遇到break语句就结束了 2、执行到switch的右大括号就结束了。
4 if和switch的区别
- if建议判断区间或范围
- switch建议判断固定值的时候使用
以上是关于Java语言之分支结构的主要内容,如果未能解决你的问题,请参考以下文章