Java流程控制
2022/7/17 1:15:06
本文主要是介绍Java流程控制,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Java流程控制
1. 用户交互Scanner
- 基本语法:Scanner s=new Scanner(System.in);
- 通过Scanner类的next()与nextLine()方法获取输入的字符串
在读取之前一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据
next() | nextLine() |
---|---|
1.一定要读取到有效字符后才可以结束输入 | 1.以Enter为结束符也就是说该方法返回的是输入回车之前的所有字符 |
2.对输入有效字符之前遇到的空白,会自动去掉 | 2.可以获得空白 |
3.只有输入有效字符之后才将其后面输入的空白作为分隔符或者结束符 | |
4.next()不能得到带有空格的字符串 |
2. 顺序结构
- 基本结构就是顺序结构,是最简单的算法结构
- 语句与语句之间,框与框之间是按从上到下顺序进行,是任何一个算法都离不开的一种基本算法结构
3. 选择结构
-
if 单选择结构
if(布尔表达式){ //如果布尔表达式为true将执行的语句 }
-
if 双选择结构
if(布尔表达式){ //如果布尔表达式为true }else{ //如果布尔表达式为false }
-
if 多选择结构
if(布尔表达式1){ //如果布尔表达式1的值为true执行代码 }else if(布尔表达式2){ //如果布尔表达式2的值为true执行代码 }else if(布尔表达式3){ //如果布尔表达式3的值为true执行代码 }else{ //如果以上布尔表达式都不为true执行代码 }
-
嵌套的if结构
if(布尔表达式1){ //如果布尔表达式1的值为true执行代码 if(布尔表达式2){ //如果布尔表达式2的值为true执行代码 } }
-
switch多选择结构,类型可以为byte,short,int或者char
从javase7开始,switch支持字符串String类型
switch(expression){ case value: //语句 break;//可选 case value: //语句 break;//可选 //数量任意 default://可选 //语句 }
4.循环结构
-
while循环
while(布尔表达式){ //循环内容 }
只要布尔表达式为true,循环一直执行
大多数是会让循环停止下来的,需要用一个表达式失效来结束;少部分需要循环一直执行,比如服务器请求响应监听等
-
do...while循环
对while而言,不满足条件则不能进入循环,而do...while与此相似但至少会循环一次
do{ //代码语句 }while(布尔表达式);
区别:while先判断后执行,dowhile先执行后判断,dowhile总是保证循环体会被至少执行一次。
-
for循环
for(初始化;布尔表达式;更新){ //代码语句 }
增强for循环
for(声明语句:表达式) { //代码句子 }
5. break & continue
- break在任何循环语句的主体部分,均可使用break控制循环流程,break用于强行退出循环,不执行循环中剩余的语句(break语句在switch语句中使用)
- continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行执行循环的判定。
6. 练习
打印三角形
for (int i = 1; i <= 5; i++) { for(int j=5;j>=i;j--){ System.out.print(" "); } for(int j=1;j<=i;j++){ System.out.print("*"); } for(int j=1;j<i;j++){ System.out.print("*"); } System.out.println(); }
这篇关于Java流程控制的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)
- 2024-05-30【Java】百万数据excel导出功能如何实现
- 2024-05-30我们小公司,哪像华为一样,用得上IPD(集成产品开发)?
- 2024-05-30java excel上传--poi
- 2024-05-30安装笔记本应用商店的pycharm,再安排pandas等模块,说是没有打包工具?
- 2024-05-29java11新特性