【JavaSE】逻辑控制
目录
1、顺序结构
2、分支结构
2.1、if语句
2.2、switch语句
3、循环结构
3.1、while循环
3.2、break
3.3、continue
3.4、for循环
3.5、do while循环
4、输入输出
4.1、输出到控制台
4.2、从键盘输入
4.3、使用 Scanner 循环读取 N 个数字。
5、猜数字游戏
1、顺序结构
顺序结构比较简单,代码按照代码书写的顺序一行一行执行
System.out.println("aaa");
System.out.println("bbb");
System.out.println("ccc");
// 运行结果
aaa
bbb
ccc
2、分支结构
2.1、if语句
1、语法格式1
if(布尔表达式){// 语句
}
如果布尔表达式结果位true,执行if中的语句,否则不执行。
2、语法格式2
if(布尔表达式){// 语句1
}else{// 语句2
}
如果布尔表达式结果位true,则执行i分钟语句,否则执行else中语句。
举例:判断一个数是奇数还是偶数
int num = 10;
if (num % 2 == 0) {System.out.println("num 是偶数");
} else {System.out.println("num 是奇数");
}
3、语法格式3
if(布尔表达式1){// 语句1
}else if(布尔表达式2){// 语句2
}else{// 语句3
}
表达式1成立,执行语句1,否则表达式2成立,执行语句2,否则执行语句3
举例:判断以数字是正数、负数、还是零
int num = 10;
if (num > 0) {System.out.println("正数");
} else if (num < 0) {System.out.println("负数");
} else {System.out.println("0");
}
练习:
1、判断1~100之间3和5的倍数
public class Test {public static void main1(String[] args) {int i = 1;while(i <= 100){if(i %3 ==0 && i % 5 ==0 ){System.out.println(i);i++;}else{i++;continue;}}}
}
2、判断一个年份是否位闰年
int year = 2000;
if (year % 100 == 0) {// 判定世纪闰年if (year % 400 == 0) {System.out.println("是闰年");} else {System.out.println("不是闰年");}
} else {// 普通闰年if (year % 4 == 0) {System.out.println("是闰年");} else {System.out.println("不是闰年");}
}
2.2、switch语句
基本语法
switch(表达式){case 常量值1:{语句1;break;}case 常量值2:{语句2;break;}default:{内容都不满足时执行语句;break;}
}
执行流程:
1. 先计算表达式的值
2. 和case依次比较,一旦有响应的匹配就执行该项下的语句,直到遇到break时结束
3. 当表达式的值没有与所列项匹配时,执行default
注意事项:
不能做switch的参数的数据类型有哪些
long double float boolean
3、循环结构
3.1、while循环
基本语法格式:
while(循环条件){循环语句;
}
循环条件为true,则执行循环语句;否则结束循环
代码示例1:打印1~10的数字
int num = 1;
while (num <= 10) {System.out.println(num);num++;
}
代码示例2:计算1~100的和
int n = 1;
int result = 0;
while (n <= 100) {result += n;n++;
}
System.out.println(result);// 执行结果
5050
代码实例3:计算5的阶乘
特别注意:
1. 和 if 类似, while 下面的语句可以不写 { } , 但是不写的时候只能支持一条语句. 建议还是加 上 { }
2. 和 if 类似, while 后面的 { 建议和 while 写在同一行.
3. 和 if 类似, while 后面不要多写 分号, 否则可能导致循环不能正确执行.
3.2、break
break的功能:永久终止循环
代码示例:找到 100~200中第一个3的倍数
3.3、continue
continue的功能是:跳过本次循环后面的代码,进行下一次循环
代码演示:找到100~200中所有3的倍数
public class Test {public static void main(String[] args) {int num = 100;while(num <= 200){if(num % 3 != 0) {num++;continue;}System.out.println("找到了3的倍数为:"+num);num++;}}//结果太多了,如果感兴趣,可以拿这个代码运行一遍
3.4、for循环
基本语法:
for(表达式①;布尔表达式②;表达式③){表达式④;
}
- 表达式1: 用于初始化循环变量初始值设置,在循环最开始时执行,且只执行一次
- 表达式2: 循环条件,满则循环继续,否则循环结束
- 表达式3: 循环变量更新方式
代码示例1:计算5的阶乘
2、计算1!+ 2!+ 3! + 4! + 5!
注意事项:和while循环类似
1. 和 if 类似, for 下面的语句可以不写 { } , 但是不写的时候只能支持一条语句. 建议还是加上{}
2. 和 if 类似, for 后面的 { 建议和 while 写在同一行.
3. 和 if 类似, for 后面不要多写 分号, 否则可能导致循环不能正确执行.
4. 和while循环一样,结束单趟循环用continue,结束整个循环用break
3.5、do while循环
基础语法:
do{循环语句;
}while(循环条件);
先执行循环语句,再判断循环条件,循环条件成立则继续执行,否则循环结束。
代码示例:打印1~10
注意事项:
1. do while 循环最后的分号不要忘记
2. 一般 do while 很少用到, 更推荐使用 for 和 while.
4、输入输出
4.1、输出到控制台
基本语法
System.out.println(msg); // 输出一个字符串, 带换行System.out.print(msg); // 输出一个字符串, 不带换行System.out.printf(format, msg); // 格式化输出
- println 输出的内容自带 \n, print 不带 \n
- printf 的格式化输出方式和 C 语言的 printf 是基本一致的.
代码示例:
System.out.println("hello world");int x = 10;
System.out.printf("x = %d\n", x)
4.2、从键盘输入
再Java当中,我们会用到Java官方写好的一个工具———》Scanner
1、了解Scanner(类)
怎样证明他是一个类呢?
将鼠标放在Scanner上,按住Ctrl,用鼠标点过去,就可以看见Scanner中包含的方法
打开上述内容之后
这样就可以查看Scanner中所有的方法,
当然这么多的方法,也不可能全都记住,只需要学会使用它的方法就行。
2、使用Scanner读取字符串 / 整数 / 浮点数
1、 这里有一些小细节需要注意
原因是在输入年龄后,按下的回车被后边的nextLIne读到了,所以没有输入名字程序就结束了。
要修改也很简单,想办法将回车读完就行。
2、这里再插图一个小问题
4.3、使用 Scanner 循环读取 N 个数字。
注意事项:
当循环输入多个数据的时候, 使用 ctrl + z 来结束输入 (Windows 上使用 ctrl + z, Linux / Mac 上使用 ctrl+ d).
5、猜数字游戏
游戏规则:
系统自动生成一个随机整数(1-100), 然后由用户输入一个猜测的数字. 如果输入的数字比该随机数小, 提示 "低了", 如果输入的数字比该随机数大, 提示 "高了" , 如果输入的数字和随机数相等, 则提示 "猜对了" .
生成随机数的方法:
1、通过凑的方法,生成你想要的任何范围的随机数。
int randNum = random.nextInt(100);//[0,100)
int randNum = random.nextInt(100)+100;//[100,200)
int randNum = random.nextInt(50)+50;//[50,100)
【JavaSE】逻辑控制相关推荐
- javaSE - 逻辑控制和输入输出(复习)
一.顺序结构 顺序结构比较简单. 像我们之前写过的代码就是顺序结构的, 按照代码书写的顺序一行一行执行 public static void main(String[] args) {System.o ...
- JavaSE语法(3)——【逻辑控制:各种分支循环语句】
目录 前言 ✏️输入输出 1.输出到控制台 2.从键盘输入 ✏️顺序结构 ✏️分支结构 1.if语句 2.switch 语句 ✏️循环结构 1.while 循环 2.break与continue 3. ...
- 【JavaSE】JavaSE之控制逻辑
在这么久的代码学习中,我们会发现,无论多厉害的代码,都是由if else循环组成的,这就是逻辑控制来实现的,所以今天我们将进行对逻辑控制的了解与学习~~ JavaSE的控制逻辑超详细讲述 一.概述 二 ...
- JavaSE学习总结
前言:在学习Java之前,我认真的学完了C语言.现在花了两个月,学习javaSe,才深刻体会到C语言的重要性,C语言就是各个语言的基础,现在觉得他非常重要,学好C,你去接触一门新语言,你会觉得很轻松. ...
- 就用人话,边唠边学——javaSE篇(1)让我们开始一段不再止步于hello world的学习之旅
本篇目录 1.系列前言(系列由来,系列内容,如何调整好学习本系列的心态,其他说明) (1)系列由来 (2)正确的心态是学习任何知识的关键 (3)系列的内容安排 2.javaSE和javaEE是个什么? ...
- 【从零开始的ROS四轴机械臂控制】(六)- 逻辑控制节点
[从零开始的ROS四轴机械臂控制(六)] 九.逻辑控制节点 1.运动控制方法 (1)逆向运动学 (2)反馈控制 2.各节点之间的联系 3.相关程序 (1)img_process节点 (2)arm_co ...
- 【JavaSE】day03_Date、SimpleDateFormat、Calendar、Collection
[JavaSE]day03_Date.SimpleDateFormat.Calendar.Collection 1.Date及其经常使用API 1)JAVA 中的时间 Java中的时间使用标准类库的D ...
- java视频为什么这么多_为什么看java教学视频教的都是javase,两者难道语言相同吗?...
Java 分类 Java SE(Java Platform Standard Edition) :Java平台标准版.主要用于桌面应用程序的开发,是Java技术的核心,提供基础 Java开发工具.执行 ...
- 电子科大计算机组成原理ppt,电子科技大学,计算机组成原理3计算机组成原理-3-5-组合逻辑控制方式.ppt...
文档介绍: 3.5组合逻辑控制虽谆煤疟胜尉张型佳腐瞪咕涝递咱砒融外尉绕粥宰墒剥俐拉摆斯绵峪掉海电子科技大学,计算机组成原理3计算机组成原理-3-5-组合逻辑控制方式电子科技大学,计算机组成原理3计算机 ...
最新文章
- H - Cow Contest POJ - 3660(Floyd 传递闭包)
- jenkins的基本操作
- python Pil byteio转换
- lvs和HA的高可用性
- 微信JSAPI支付,报错当前页面的URL未注册
- linux的can通信busoff,socketCAN内核源码分析是否支持busoff自恢复--Apple的学习笔记
- Webserver管理系列:5、利用MSConfig排查木马
- 指定等级 Exercise07_01
- NET上传大文件出现网页无法显示的问题 默认的上传文件大小是4M
- 计算机组装与维护思考问题,计算机组装与维护心得体会
- 利用Drawable绘制圆角图片和圆形图片
- Scrapy 入门教程
- Android debug时一直处于waiting for debugger解决办法
- OSI七层网络模型 TCP五层网络模型
- hasnext() java_关于Java:为什么HasNeXT()false,但hasNextLine() 是真的?
- 复制指定目录后缀文件并重命名
- 42个创意户外广告设计
- 数据库实验报告2-数据库管理
- 五笔打字可以帮助你练习五笔
- Vuex的热更替你知道多少?
热门文章
- 什么是SQL注入?怎么解决SQL注入?
- C语言768kb未压缩图片,若一幅图像的量化字长为16位,分辨率为800*600,它不经压缩占用的存储容量是()字节。A.690000B.1 - 试题答案网问答...
- List Set Map
- Wordpress网页直接插入bilibili视频方法
- 使用ZAP寻找敏感文件和目录
- juniper官网相关网址
- AWT/SWT/SWING 区别和联系
- android drawtext 方法,8.2.13 drawText方法:绘制字符串
- 总结两种常规地磁匹配算法MAGCOM算法/ICCP算法的特性
- PHP表白墙(前台+后台+mysql)源码下载