Java流程控制3
Java流程控制3
For循环
- 虽然所有的循环结构都可以用 while 或者 do...while 表示,但是 Java 提供了另外一种语句 —— for 循环,使一些循环结构变得简单。
- for 循环语句是支持迭代的一种通用结构,是最有有效、最灵活的循环结构。
- for 循环执行的次数是在执行前就确定的。语法格式如下:
for(初始化; 布尔值表达式; 更新){
//代码语句
}
快捷键
//快捷键100.for
for (int i = 0; i < 100; i++) {
}
代码示例:
int a = 1;//初始化条件
while (a<=100){
System.out.println(a);
a += 2;//迭代
}
System.out.println("While 循环结束\n");
//快捷键100.for
for (int i = 0; i < 100; i++) {
System.out.println("100.for");
}
for (int i = 1; i<=100; i++){
System.out.println(i);
}
System.out.println("for 循环结束");
for ( ; ; ){
//死循环
}
关于 for 说明一下几点:
/*最先执行初始化步骤,可以初始话一种类型,可初始化一个或多个循环变量,也可以是空语句。
然后检索布尔表达式的值。如果为 true,循环被执行。如果为 false,循环终止,开始执行下面的语句。
执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。
再次检查布尔表达式的值,执行以上的操作
*/
Demo02:0~100之间的奇数和与偶数和
代码:
int oddsum = 0;
int evensum = 0;
for (int i = 0; i <= 100; i++) {
if (i%2!=0){//奇数
oddsum+=i;
}else {//偶数
evensum+=i;
}
}
System.out.println("奇数的和"+oddsum);
System.out.println("偶数的和"+evensum);
Demo03:1~1000之间能被 5 整除的数,并且每行输出 3 个
for (int i = 0; i < 100; i++) {
if (i%5==0){
System.out.print(i+"\t");
}
if (i%(5*3)==0){
System.out.println();
//or System.out.print("\n");
}
//println 输出完换行
//print 输出完不换行
Demo04:九九乘法表
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(i+"*"+j+"="+(j*i)+"\t");
}
System.out.print("\n");
}
//将大项目化小
增强 for 循环
- Java5 引入了一种主要用于数组或集合的增强型 for 循环
- Java 增强 for 循环语法如下:
for(申明语句 : 表达式){
//代码语句
}
int[] numbers = {10,20,30,40,50};//定义一个数组
for (int i = 0; i < 5; i++) {
System.out.println(numbers[i]);
}
System.out.println("------------------------");
//遍历数组的元素
for (int x:numbers){
System.out.println(x);
}
break & continue
- break 在任何循环语句的主体,均可用 break 控制循环。break 用于强行退出循环,不执行循环中剩余语句。(break 语句也在 switch 语句中使用)。
int i = 0;
while (i<100){
System.out.println(i);
i++;
if (i==30){
break;//在30的时候跳出循环
}
}
-
continue 语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
int i = 0; while (i<100){ i++; if (i%10==0){ System.out.println(); continue; } System.out.print(i+"\t"); }
-
关于 goto 关键字
- goto 关键字很早就在程序设计语言中出现。尽管 goto 仍是 Java 保留字,但并未在语言中正式使用。Java 没有 goto。然而,在 break 和 continue 这两个关键字的身上,我们仍能看出一些 goto 的影子——带标签的 break 和 continue。
- ”标签“是指后面跟一个冒号的标识符,例如:label
- 对 Java 来说唯一用到标签的地方是在循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套一个循环,由于 break 和 continue 关键字通常只中断当前循环,但随同标签使用,它会中断到存在标签的地方。
label标签使用,例如下:
public static void main(String[] args) {
//打印101~150之间的质数
//不建议使用!
int count = 0;
outer: for (int i = 101; i < 150; i++) {
for (int j = 2; j < i/2; j++) {
if (i%j==0){
continue outer;
}
}
System.out.print(i+"\t");
}
}
Java基础总结自狂神说Java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】