当前位置: 首页 > news >正文

Java选择结构

选择结构

if单选择结构

我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示

语法:

if(布尔表达式){// 如果布尔表达式为true将执行的语句
}
package com.faxont.struct;import java.util.Scanner;public class IfDemo01 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入内容:");String s = scanner.nextLine();// equals:判断字符串是否相等if(s.equals("hello")){System.out.println(s);}System.out.println("程序结束");scanner.close();}
}

if双选择结构

现在有个需求,公司要收购一个软件,成功了,给人支付100万元,失败了,自己找人开发。这样的需求单单if就搞不定了,我们需要有两个判断,需要一个双选择结构,所以有了if-else结构。

语法:

if(布尔表达式){// 如果布尔表达式的值为true
}else{// 如果布尔表达式的值为false
}
package com.faxont.struct;import java.util.Scanner;public class IfDemo02 {public static void main(String[] args) {// 考试分数大于60就是及格,小于60就是不及格Scanner scanner = new Scanner(System.in);System.out.println("请输入考试分数:");int score = scanner.nextInt();if(score >= 60){System.out.println("及格");}else{System.out.println("不及格");}}
}

if多选择结构

但是现实情况往往更复杂,存在区间多级判断。比如,满分100分的卷子,90-100为优秀、80-90为良好...在生活中我们很多时候的选择也不仅仅只有两个,所以我们需要一个多选择结构来处理这类问题。

语法:

if(布尔表达式 1){// 当布尔表达式 1的值为true时 执行代码
}else if(布尔表达式 2){// 当布尔表达式 2的值为true时 执行代码
}else if(布尔表达式 3){// 当布尔表达式 3的值为true时 执行代码
}else{// 当以上布尔表达式的值都不为true时 执行代码
}

嵌套的if结构

使用嵌套的 if...else 语句是合法的。也就是说你可以在另一个 if 或者 else if 语句中使用 if 或者 else if 语句。你可以像 if 语句一样嵌套 else if...else。

语法:

if(布尔表达式 1){// 当布尔表达式 1的值为true时 执行代码if(布尔表达式 2){// 当布尔表达式 2的值为true时 执行代码}
}

switch多选择结构

多选择结构还有一个实现方式就是switch case语句。

switch case语句判断一个变量与一系列中某个值是否相等,每个值称为一个分支。

switch(expression){case value :// 语句break;// 可选case value :// 语句break;// 可选// 可以有任意数量的case语句default :// 可选//语句
}

switch 语句中的变量类型可以是:

  • byte、short、int 或者 char。
  • 从 Java SE 7 开始
  • switch 支持字符串 String 类型了
  • 同时 case 标签必须为字符串常量或字面量。
package com.faxont.struct;public class SwitchDemo01 {public static void main(String[] args) {// case穿透 两个case之间没有添加break语句,那么case穿透,会执行下一个case的代码// switch 匹配一个具体的值,然后执行匹配的代码char grade = 'C';switch(grade){case 'A':System.out.println("优秀");break;case 'B':System.out.println("良好");break;case 'C':System.out.println("及格");break;case 'D':System.out.println("不及格");break;default:System.out.println("未知");break;}}
}
package com.faxont.struct;public class SwitchDemo02 {public static void main(String[] args) {String name = "千珏";// JDK7的新特性,表达式可以是字符串!// 字符的本质还是数字// 反编译 java---class(字节码文件)---反编译(IDEA)switch(name){case "千珏":System.out.println("千珏");break;case "弋湖":System.out.println("弋湖");break;default:System.out.println("错了!");break;}}
}
http://www.jsqmd.com/news/332133/

相关文章:

  • 深度学习框架YOLO模型如何训练无畏契约数据集 VaLoRant YOLO模型专用数据集 检测敌人
  • 一篇搞定全流程 9个AI论文工具:本科生毕业论文+开题报告全场景测评
  • 聊聊值得选的碳分子筛制氮机,靠谱品牌推荐
  • 基于springboot的就业推荐管理系统设计实现
  • Java剪辑接单:智能报价比价系统源码剖析
  • 2026年大型塔转滚塑设备/水桶滚塑设备热门厂家推荐汇总
  • 基于SpringBoot的传统手工艺文化展示平台的设计与实现
  • 救命神器8个降AI率网站,千笔帮你轻松降AIGC
  • 做题笔记(Feb.)
  • 写作压力小了,更贴合本科生需求的AI论文网站 千笔·专业学术智能体 VS 万方智搜AI
  • 2026年品质可靠的穿梭滚塑机/水桶滚塑机热门厂家推荐汇总
  • 基于SpringBoot的高尔夫球场管理系统统的设计与实现
  • 2026年市面上评价高的工地疏通厂家有哪些,市场上工地疏通精选综合实力TOP企业
  • 2026年知名的高强钢管/建筑高强钢管厂家信誉综合参考
  • 2026年评价高的深圳卫生间管道疏通通马桶/深圳管道疏通服务厂家最新推荐
  • Linux+Docker+SpringBoot 方便部署
  • swift 单例实现
  • 灵巧手十年演进
  • 2026年乐山钵钵鸡店推荐:城市美食寻味深度评测,解决游客选择困难与口味正宗痛点
  • aix环境10g由于控制器异常导致ORA-600 4000故障处理---惜分飞
  • Java线程状态图解:从创建到终止的全生命周期
  • YASKAWA SGD7S-170D30B 单轴放大器情绪价值
  • 上海装修设计2026趋势:原木风室内空间设计厂家哪家强,现代简约别墅设计/现代简约装修,上海装修设计厂家排行
  • 2026年靠谱的1500高强管/大桥护栏高强管优质厂商精选推荐(口碑)
  • AI 编程工具安全实战:从 IDE 插件审计到模型投毒防御
  • 2026年口碑好的保温箱拉杆/医疗拉杆高评分品牌推荐(畅销)
  • 用React Native开发OpenHarmony应用:StickyHeader粘性标题
  • 开源供应链安全治理指南:从恶意包防护到合规落地
  • 计算机毕设Java基于JAVA的卷烟厂库存管理系统 基于Java技术的烟草企业库存管理解决方案 Java驱动的卷烟企业库存信息化管理系统设计
  • 实用指南:HTTP报文格式