随堂笔记之Java流程控制

news/2025/3/25 18:11:41/文章来源:https://www.cnblogs.com/TTTiffany/p/18787753

此内容源自

B站狂神说Java基础

的课后笔记与总结,用于复习和查看,因此写得比较简陋,不太适合萌新学习

用户交互Scanner

使用next()、nextLine()去接收输入

  • next() 不能接收有空格的字符串
  • nextLine() 可以接收有空格的字符串,以回车为结束符(一般都用这个)

使用hasNext()、hasNextLine()来判断是否还有输入,使用场景一般是:

  • 不确定是否有输入 ➝ 用 hasNext() 先检查
  • 文件读取 ➝ 用 hasNext() 避免超出范围
  • 明确有输入 ➝ 直接用 next() 读取

使用完Scanner后关闭是一个良好的习惯

Scanner scanner = new Scanner(System.in);while (scanner.hasNext()) { // 这里会等待输入,被System.in阻塞,直到用户输入了才调用hasNext()String input = scanner.next();System.out.println("你输入了:" + input);
}scanner.close();

顺序结构

按照顺序一句一句执行,从上到下依次执行

选择结构

  • if单选择结构
int num = 10;
if (num > 0) {System.out.println("num是正数");
}
  • if双选择结构
int num = -5;
if (num > 0) {System.out.println("num 是正数");
} else {System.out.println("num 不是正数");
}
  • if多选择结构
int num = 0;
if (num > 0) {System.out.println("num 是正数");
} else if (num < 0) {System.out.println("num 是负数");
} else {System.out.println("num 是零");
}
  • 嵌套的if结构
  • switch结构
int day = 3;
switch (day) { //变量,可以为byte、short、int和char或者String(JDK7新特性)case 1: //case后必须跟字符串常量和字面量System.out.println("星期一");break; //不写的话会case穿透case 2:System.out.println("星期二");break;case 3:System.out.println("星期三");break;default:System.out.println("未知");
}

*学会查看源码:

  • 直接查看源码:查看java文件
  • 没有源码:只有class字节码文件时,通过反编译查看源码
    具体方式:在IDEA中找到‘project structure’->找到‘compiler output’路径打开->找到对应的字节码文件使用IDEA打开

循环结构

  • while循环
int i = 1;
while (i <= 5) {System.out.println(i);i++;
}
  • do...while循环(至少执行一次)
int i = 1;
do {System.out.println(i);i++;
} while (i <= 5);
  • for循环
for (int i = 1; i <= 5; i++) {//可用5.for来快速生成for循环结构System.out.println(i);
}
  • JDK5增加的新特性增强for循环
    用于遍历数组和集合
for (元素类型 变量名 : 遍历对象) {// 循环体
}

break continue goto

  • break:强制退出循环,不执行剩余内容
  • continue:终止某次循环,接着进入下一次循环
  • goto:Java没有goto,但是可以利用label实现goto,不过通常不使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/904356.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sql语句把图片存入数据库

这是一个小的练习,目的是把图片以二进制字符串形式存入sql数据库表中,后续练习尝试在WINCC把其还原成图片。 在以前的数据库MyDB中新建一个数据表,有四个字段: imageID 类型为bigint,作为标识符,自增1 mydatetime 日期事件类型 imagename varchar(100)数据类型 imagedata…

FSRCNN:加速超分辨率卷积神经网络

作为一种成功的图像超分辨率 (SR) 深度模型,超分辨率卷积神经网络 (SRCNN) 在速度和恢复质量方面都表现出优于以往手工制作模型的性能。然而,高计算成本仍然阻碍了它需要实时性能 (24 fps) 的实际使用。在本文中,我们旨在加速当前的 SRCNN,并提出一种紧凑的沙漏形 CN…

GNSS测量实习

实 习 报 告学院:建筑工程与空间信息学院 专业:地理信息科学 实习性质:校内实习 实习单位:建筑工程与空间信息学院 指导教师:冯建迪目录 一、实习的性质和目的要求 二、实习的任务和内容 三、静态测量 3.1 静态测量简介 3.2作业流程 3.3注意事项 3.4 GPS 控制网设计…

花束搭配

提取公式:Ai+Aj>Bi+Bj 变形得:Ai-Bi+Aj-Bj>0#include<bits/stdc++.h> using namespace std; #define int long long const int N = 1e6 + 10; int n, m, k, cnt, ans; string s;void solve() {cin >> n;vector<int> a(n), b(n), c(n);for (int i = 0…

题解:P11955 「ZHQOI R1」覆盖

https://www.luogu.com.cn/article/20vbz4zk对于一颗线段树,它的结构如图所示。一定是先有红色,再有绿色,再有蓝色,再有紫色。如果靠前的颜色没有那么靠后的颜色不可能出现。我们先考虑上一层(黑色)都已经处理完,新的一层会有什么影响,即已知 \(f_{2^j}\) 求 \(f_{2^j+…

sir.net,一个类似itdog/pingpe/chinaz的网络质量检测/监视工具

相信不少站长或主机爱好者都使用过itdog/pingpe/chinaz网络质量和ip质量检测这类工具,这其中最重要最常用的就是ping值检测工具了,如果你熟悉或接确过这方面的应用,那么现在,不防尝鲜下 sir.net(中文名:站长先生) ,它将不失作为你一个更有趣更稳定的选择。 1)类似google.…

原来不是喜欢原子化css,只不过是喜欢tailwind

前言 写css的时候,经常有某个控件只需要些许css样式,但是写行内样式又有优先级问题,从而需要为其单独定义一个class,然而某个控件只是用来布局,没有特定含义,连名称都不好命名。 因此,原子化css应运而生,早期的bootstrap,以及一些组件库中都有使用。 那时叫做工具类,…

c语言分支与循环基础

实验任务一 问题1:生成一个1到100的随机整数 问题2:使输出的整数宽度为4位,不足时在前面补0 问题3:循环生成五个1到100的随机整数,与固定前缀组合后输出类似学员编号的内容实验任务2 问题一:在一次购买流程结束后,清除本次购买的总价,下次运行能重新计算。去掉的话,总…