java_day3_Scanner,顺序结构,选择结构(if,switch),循环结构(for,while),
一、Scanner
键盘录入:程序运行过程中,用户可以根据自己的需求输入参与运算的值
实现键盘录入的步骤
1、导包
2、创建键盘录入对象
3、调用方法实现键盘录入
1)输入整数
2)输入字符串
public class ScannerDemo1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int i = sc.nextInt(); // 程序运行到这一步的时候,发生阻塞,等待用户输入一个整数
System.out.println("用户输入的内容是:" + i);
System.out.println("请输入二个整数:");
int i2 = sc.nextInt();
System.out.println("用户输入的内容是:" + i2);
System.out.println("两个数之和为:" + (i + i2));
System.out.println("请输入您的姓名: ");
String name = sc.next();
System.out.println("请输入您的年龄: ");
int age = sc.nextInt();
System.out.println("姓名:" + name + ", 年龄:" + age);
}
}
二、顺序结构
顺序结构:按照编写代码的顺序,自上而下执行
public class ShunXuDemo {
public static void main(String[] args) {
//顺序结构:按照编写代码的顺序,自上而下执行
System.out.println("Hello World1");
System.out.println("Hello World2");
System.out.println("Hello World3");
System.out.println("Hello World4");
System.out.println("Hello World5");
System.out.println("Hello World6");
System.out.println("Hello World7");
}
}
三、if选择结构
选择结构:
if选择语句
switch选择语句
if选择语句:
if语句定义格式1:
if(关系表达式){
语句体;
}
if语句定义格式2:
if(关系表达式){
语句体1;
}else{
语句体2;
}
if语句定义格式3:
if(关系表达式1){
语句体1;
}else if(关系表达式2){
语句体2;
}...{
语句体n;
}else{
语句体n+1;
}
注意事项:
1、if小括号中的语句,可以很复杂,但是最终的结果一定是boolean类型
2、只有当if语句体中的语句只有一行的时候,大括号才可以省略
3、小括号后面可以添加分号,相当于if语句拥有一个空的语句体
注意:
if-else语句中,只会执行其中某一个语句体,不会同时都执行!
/*
需求:
1、通过把学生考试成绩分等级来引出if语句的第三种格式
90-100 优秀
80-90 好
70-80 良
60-70 及格
60一下 不及格
*/
public class IfDemo3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入江川的考试成绩:");
int score = sc.nextInt();
if(score>=90 && score<=100){
System.out.println("优秀");
}else if(score>=80 && score<90){
System.out.println("好");
}else if(score>=70 && score<80){
System.out.println("良");
}else if(score>=60 && score<70){
System.out.println("及格");
}else if(score>=0 && score<60){
System.out.println("不及格");
}else {
System.out.println("成绩有误!");
}
}
}
四、switch选择结构
switch选择语句:
语句定义格式:
switch(表达式){
case 常量值1:
表达式1;
break;
case 常量值2:
表达式2;
break;
...
default:
表达式n;
break;
}
执行流程:严格按照下面的流程执行。
1、先计算表达式中的值
2、然后拿着计算出来的值自上而下匹配所有的case,当某一个case后面的常量值与计算出来的值一样的时候,
执行其中的语句体,遇到break,结束整个switch语句.
3、当所有的case都不匹配的时候,执行default中的语句体,当遇到break的时候,结束整个switch语句.
注意:
1、表达式的取值:byte,short,int,char,枚举,String
2、case后面只能跟常量,不能是变量
3、break能不写,但是会发生switch穿透!
4、default语句可以不写,为了程序的严谨性,最好加上
5、default语句可以放在switch语句中的任意位置
import java.util.Scanner;
public class SwitchDemo {
public static void main(String[] args) {
// 3. 根据月份,输出对应的季节,并输出至少两个描述该季节的成语和活动。
Scanner sc =new Scanner(System.in);
int season = sc.nextInt();
switch (season) {
case 12:
case 1:
case 2:
System.out.println("冬季");
System.out.println("银装素裹,白雪皑皑");
System.out.println("打雪仗,堆雪人");
case 3:
case 4:
case 5:
System.out.println("春季");
System.out.println("春暖花开,鸟语花香");
System.out.println("春游,赏花");
case 6:
case 7:
case 8:
System.out.println("夏季");
System.out.println("烈日炎炎,汗流浃背");
System.out.println("游泳,吃雪糕");
case 9:
case 10:
case 11:
System.out.println("秋季");
System.out.println("秋风飒飒,落叶归根");
System.out.println("赏菊,登高");
}
}
}
五、for循环
for循环:
语句定义格式:
for(初始化语句;判断条件语句;控制条件语句){
循环体语句;
}
注意事项:
1、初始化条件语句,有且仅执行一遍
2、初始化条件语句可以写在for循环的外面,和定义在for循环内部时比较,作用域不同
3、大括号可以省略,但是省略后只能作用在第一条语句上
4、判断条件语句能否不写?可以不写,但是会变成死循环
5、控制条件语句也可以不写,但是可能会是死循环
一个最简单的for死循环:
for(;;){
....
}
//键盘录入一个数据n(1<=n<=9),输出对应的nn乘法表
import java.util.Scanner;
public class Demo3 {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
System.out.println("请输入一个1到9的数字:");
int n =sc.nextInt();
nnMultiplication(n);
}
public static void nnMultiplication(int n){
for(int i=1;i<=n;i++){
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+(j*i)+"\t");
}
System.out.println();
}
}
}
六、while循环
while循环:
语句定义格式1:
初始化条件语句;
while(判断条件语句){
循环体语句;
控制条件语句;
}
语句定义格式2:
初始化条件语句;
do{
循环体语句;
控制条件语句;
}while(判断条件语句);
注意:
1、while循环可以和for循环等价转换
2、for循环和while循环的使用场景:
for循环适合明确的范围内循环
当循环次数不明确获取就是要求次数的时候,优先考虑while循环
/*
我国最高山峰是珠穆朗玛峰:8848m,我现在有一张足够大的纸张,厚度为:0.01m。
请问,我折叠多少次,就可以保证厚度不低于珠穆朗玛峰的高度?
*/
public class WhileDemo {
public static void main(String[] args) {
int high = 884800;
int thickness = 1;
int count = 0;
while (thickness<high){
thickness *=2;
count++;
}
System.out.println("共折叠 "+count+"次");
}
}
七、break
跳转控制语句:
break关键字
continue
return
break: 打破,打碎,终止
使用break的注意事项:
1、break的使用需要在特定的场景下使用才有意义
2、break只能在switch选择语句或者循环中使用
八、continue
不能单独使用,需要在特定的场景下使用 ,只能在循环中使用
结束当次循环,继续下一次循环
九、return
return必须在方法中写,一个方法只会有一个return生效,表示结束整个方法
java_day3_Scanner,顺序结构,选择结构(if,switch),循环结构(for,while),的更多相关文章
- 流程控制:顺序结构: 代码默认从上到下依次执行 分支结构: 细分在分为如下 循环结构: while .. for ..
# ### 流程控制: ''' 流程: 代码执行的过程 流程控制: 对代码执行的过程进行管控 顺序结构: 代码默认从上到下依次执行 分支结构: 细分在分为如下 循环结构: while .. for . ...
- ios开发环境 分支语句 、 循环结构(for) 、 循环结构
1 完成命令解析程序 1.1 问题 有命令解析程序,该程序提供三个功能选项供用户选择,用户选择某功能后,程序在界面上输出用户所选择的功能名称.程序的交互效果如图-1所示: 图-1 由上图可以看出,程序 ...
- 黑马程序员——C语言基础 流程控制 选择结构和循环结构
---恢复内容开始--- Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)流程控制 1> 顺序结构:默认的流程 ...
- Java程序流程控制:判断结构、选择结构、循环结构
本文内容: 判断结构 if 选择结构 switch 循环结构 while do-while for for each break.continue return 首发时间:2017-06-22 21: ...
- C#编程经验-选择结构和循环结构
选择结构:if elseif else ifswitch 循环结构:whiledo whilefor()foreach() 种类太多,不便记忆,人脑要记多种结构,要用的时候一种也把握不住所以,为方便记 ...
- Java 第六章 循环结构2
循环结构 2 会使用 for 循环结构 会在程序中使用 break 和 continue for 比 while 更简洁 什么是 for 循环 ... 语法: for 循环的语法和执行顺序 备注:2条 ...
- LabVIEW(八):程序结构中的循环结构
1.程序结构分为三种:循环结构.分支结构.顺序结构. 本文主要讨论循环结构. 2.While循环 左下角:循环计数端子i,从0开始计数,每进行一次循环,i自动增加1. 右下角:循环条件端子,当循环达到 ...
- C语言入门7-程序设计方法基础-循环结构
程序设计方法基础-循环结构 循环三要素: 初值 循环判断条件 步长(循环增量) 循环结构在有些书籍上也称为重复结构, 即反复执行某一部分的操作. 循环三要素: 初值 循环判断条件 步 ...
- Java流程控制:循环结构
一.简介 顺序结构的程序语句只能被执行一次,如果您想要同样的操作执行多次,就需要使用循环结构. Java中有三种主要的循环结构: 'while'循环 'do...while'循环 'for'循环 在J ...
- Java中的循环结构(二)
循环结构(二) 学习本章有道的单词: rate:速度,比率 young:年轻的,年少 schedule:时间表,调度 neggtive:消极的;否定 customer:顾客,观众 birthday:生 ...
随机推荐
- SMU Summer 2024 Contest Round 2 (7.9)zhaosang
A-A http://162.14.124.219/contest/1006/problem/A 考查用vector画图 我枚举到n==5才开始用,浪费40分钟,还是找规律太慢,得多学 做题代码如下: ...
- 关键点检测(1)——标注关键点检测数据(labelme和CVAT)
关键点检测,作为计算机视觉领域的重要分支,广泛应用于人体姿态估计.面部表情识别.手部动作分析等多个场景.其核心在于从图像中准确检测并定位特定的关键点位置.然而,高效的模型训练离不开大量高质量的标注数据 ...
- 阅读翻译Mathematics for Machine Learning之2.8 Affine Subspaces
阅读翻译Mathematics for Machine Learning之2.8 Affine Subspaces 关于: 首次发表日期:2024-07-24 Mathematics for Mach ...
- 使用 @Audited 增强Spring Boot 应用程序的数据审计能力
介绍 在Spring Boot开发的动态世界中,确保数据完整性和跟踪变化是至关重要的.实现这一目标的一个强大工具是@Audited注解.本文深入探讨了该注解的复杂性.其目的.实现步骤以及如何利用其功能 ...
- .NET TCP、UDP、Socket、WebSocket
做.NET应用开发肯定会用到网络通信,而进程间通信是客户端开发使用频率较高的场景. 进程间通信方式主要有命名管道.消息队列.共享内存.Socket通信,个人使用最多的是Sokcet相关. 而Socke ...
- 入门Vue+.NET 8 Web Api记录(一)
做自己感觉有意思的或者能解决自己需求的项目作为入门,我觉得是有帮助的,不会觉得那么无聊. 一个最简单的前后端分离项目应该是怎么样的? 我觉得就是前端有个按钮,点击向后端发送一个get请求,获取到数据后 ...
- 在哲学/自然科学范畴下“推理”(reason about)的类别及解释
注意,本文的解释采用Google大模型(Gemini)的答案. 翻译: 推理是运用逻辑和证据得出结论的过程.它包含批判性地思考一个主题,考虑不同的观点,以及识别事物之间的关系.以下是推理的一些方式: ...
- 【转载】 自然梯度法(Natural Gradient)
原文地址: https://blog.csdn.net/philthinker/article/details/80615122 ----------------------------------- ...
- 强化学习算法如何将GPU利用率提高到100%——在线强化学习如何将GPU利用率提升至100%
一直有个疑问,那就是"强化学习算法如何将GPU利用率提高到100%",在一些论坛中也有人会提出这样的问题,但是一直也没有人比较正面的回答过这个问题,为此正好自己又想到了这么一个问题 ...
- mysql8.0.16免安装教程
Win10下免安装版MySQL8.0.16的安装和配置 1.MySQL8.0.16解压 其中dada文件夹和my.ini配置文件是解压后手动加入的,如下图所示 2.新建配置文件my.ini放在D: ...