switch和while循环
2021/9/4 6:06:02
本文主要是介绍switch和while循环,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
switch多选择结构
多选择结构还有一个实现方式是switch case语句
switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支
switch语句中的变量类型可以是:
byte 、short 、int、或者char
从JavaSE 7开始
switch支持字符串String类型了
同时case标签必须为字符串常量或字面量
switch (expression){ case value : //接语句 break;//可选 case value : //语句 break;//可选 //你可有任意数量的case语句 default://可选 //语句 }
public class SwitchDemo01 { public static void main(String[] args) { // case 穿透,break击穿,后接break即switch语句被击穿,一直往下跑,不再终止 //switch 匹配一个具体的值 char grade ='B'; switch (grade){ case 'A': System.out.println("优秀"); break;//可选 case 'B' : System.out.println("良好"); case 'C' : System.out.println("及格"); case 'D': System.out.println("再接再厉"); case 'E': System.out.println("挂科"); default: System.out.println("未知等级"); //此时若grade成B,输出良好 及格 再接再厉 挂科 未知等级 // 若grade改成A,则输出优秀,因为有break击穿,终止 //若grade 改成无关的如F,输出为未知等级 //即switch中先找到一个case ,输出,如果后边有break击穿,则循环停止,若没有,一直往下走;若定位不到一个case,则从defaut输出 //因此。如果想得到单一的结果,则每一个case后边加上一个break,用于停止循环 } } } 即向下边一样每个后边加一个break,用于终止循环 public class SwitchDemo01 { public static void main(String[] args) { // case 穿透,break击穿,后接break即switch语句被击穿,一直往下跑,不再终止 //switch 匹配一个具体的值 char grade ='B'; 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;//可选 case 'E': System.out.println("挂科"); break;//可选 default: System.out.println("未知等级");
从JavaSE 7开始
switch支持字符串String类型了
例
public class SwitchDemo02 { public static void main(String[] args) { String name = "狂神"; switch (name){ case "秦疆": System.out.println("秦疆"); break; case "狂神": System.out.println("狂神"); break; default: System.out.println("是啥"); //输出狂神 } } }
反编译class文件
public class SwitchDemo02 { public static void main(String[] args) { //JDK7的新特性,表达结果可以是字符串!!! //字符的本质是数字,字符用hashCode()来一一对应的,从反编译程序中可看出 //反编译: java....class(字节码文件)....反编译(在这里用IDEA来反编译) //反编译 看源码,看class文件的源码 //直接找到project structure中找到要反编译的文件,复制路径,打开文件找到要反编译的class文件,复制,然后打开IDE中的一个代码程序文件夹(open in directory path),粘贴进去即得到反编译的程序 String name = "狂神"; switch (name){ case "秦疆": System.out.println("秦疆"); break; case "狂神": System.out.println("狂神"); break; default: System.out.println("是啥"); } } }
循环结构
while循环
do .....while循环
for循环
在java5中引入了一种主要用于数组的增强型for循环
while循环
最基本的循环,结构为:
while(布尔表达式){ //循环内容 }
注意:
1.只要布尔表达式为true,循环就会一直执行下去
2.我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环
3.少部分情况需要循环一直执行,比如服务器的请求响应监听等
4.循环条件一直为true就会造成无限循环(死循环),我们正常的业务编程中应该尽量避免死循环。会影响程序性能或者造成程序卡死崩溃!
public class WhileDemo01 { public static void main(String[] args) { //输出1-100 int i = 0; while (i<100){ i++; System.out.println(i); } } } 注意i<100,i=100时,i++结果101赋值给i输出
死循环
public class WhileDemo02 { public static void main(String[] args) { while (true){ //while里一直为true,没有限制,一直循环下去 //主要用于等待客户端连接,定时检查等这种应用 } } }
计算1+2+3+...+100=?
public static void main(String[] args) { //计算1+2+3+....+100等于多少? int i = 0 ; int sum = 0; while (i<100){ i++; sum=sum + i; } System.out.println(sum); //输出5050 } } 或者下面这样也可,主要看i++的位置判断何时终止 public class WhileDemo03 { public static void main(String[] args) { //计算1+2+3+....+100等于多少? int i = 0 ; int sum = 0; while (i<=100){ sum=sum + i; i++; } System.out.println(sum); //输出5050 } }
这篇关于switch和while循环的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-10Rakuten 乐天积分系统从 Cassandra 到 TiDB 的选型与实战
- 2025-01-09CMS内容管理系统是什么?如何选择适合你的平台?
- 2025-01-08CCPM如何缩短项目周期并降低风险?
- 2025-01-08Omnivore 替代品 Readeck 安装与使用教程
- 2025-01-07Cursor 收费太贵?3分钟教你接入超低价 DeepSeek-V3,代码质量逼近 Claude 3.5
- 2025-01-06PingCAP 连续两年入选 Gartner 云数据库管理系统魔力象限“荣誉提及”
- 2025-01-05Easysearch 可搜索快照功能,看这篇就够了
- 2025-01-04BOT+EPC模式在基础设施项目中的应用与优势
- 2025-01-03用LangChain构建会检索和搜索的智能聊天机器人指南
- 2025-01-03图像文字理解,OCR、大模型还是多模态模型?PalliGema2在QLoRA技术上的微调与应用