发表时间:2022-03-25来源:网络
反复执行的代码片段,本质就对重复代码的一种简化解决方案。
1.初始化语句
2.循环条件语句
3.循环体语句
4.控制条件语句
1.while循环语句
格式:
1.初始化语句;
while(2.循环条件语句) {
3.循环体语句;
4.控制条件语句
}
2.for循环语句
格式:
for(1.初始化语句; 2.循环条件语句; 4.控制条件语句) {
3.循环体语句;
}
3.do-while循环
格式:
1.初始化语句;
do {
3.循环体语句;
4.控制条件语句
} while(2.循环条件语句);
4.嵌套循环语句: 前三者语句结合使用
for(1.初始化语句; 2.循环条件语句; 4.控制条件语句) {
3.循环体语句;
}
执行流程
1.首先执行初始化语句
2.执行循环条件语句,判断条件是否成立
成立
执行循环体语句
执行控制条件语句
回到第二步
不成立
退出循环体

1.初始化语句在整个循环过程中只能够执行一次
2.循环变量只能够在循环体内有效,循环体外无法访问
3.表达式一可以省略,也可以放在循环体的外面,作用于全局
4.表达式二也可以省略,表示死循环
5.表达式三也可以省略,表示死循环
6.表达式一二三都可以省略,分号不能省略,这种写法就是标准的for循环死循环格式
7.表达式一可以定义多个循环变量,表达式三也可以是多个控制条件语句
8.表达式二必须是boolean类型的结果,所以可以用多个逻辑运算符连接而成的表达式
循环的解题思路:
遵循一个本质: 循环的本质就是用来解决重复性问题,如果代码出现了重复就用循环改进
思路:
1.怎么想的就怎么写,如果代码出现了重复,用循环改进
2.确定循环的次数
(1)如果可以确定选择for循环
(2)如果不能够确定选择while循环或者do-while循环
①如果循环条件是先执行选择while循环
②如果循环体先执行就选择do-while循环
3.找相同,找不同
(1)找相同
相同的话就将重复的代码直接扔入到循环体中
(2)找不同
结合循环变量: 找出数列变化情况和循环变量的规律
结合自定义变量: 如果数列和循环变量找不到关系,你需要自己定义变量来找关系
控制台输出数据1-10
public class LoopDemo02 { public static void main(String[] args) { System.out.println("hello: " + 1); System.out.println("hello: " + 2); System.out.println("hello: " + 3); System.out.println("hello: " + 4); System.out.println("hello: " + 5); System.out.println("hello: " + 6); System.out.println("hello: " + 7); System.out.println("hello: " + 8); System.out.println("hello: " + 9); System.out.println("hello: " + 10); /* * i = 1 1 * i = 2 2 * i i * 数列和循环变量的规律是一致 */ for(int i = 1; i public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入阶乘数: "); int n = input.nextInt(); long jc = 1; for (int i = 1; i public static void main(String[] args) { for (int i = 10000; i
一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)?
public class LoopDemo01 { public static void main(String[] args) { // 定义变量保存折纸的厚度 double h = 0.08; // 定义变量保存折纸的次数 int count = 0; // 怎么想的就怎么写,如果代码出现了重复,用循环改进 // 第一次对折 // h *= 2; // count ++; // 第二次对折 // h *= 2; // count ++; // .... while (h
驾照科目二考试,考试结束后根据成绩确定是否继续补考`
public class DoWhileDemo01 { public static void main(String[] args) { Scanner input = new Scanner(System.in); double score = 0.0; do { System.out.println("正在科目二考试中,请稍后..."); // 线程休眠 此段代码暂时不用去学习 try { Thread.sleep(3000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("从考场开心地出来了"); System.out.print("请输入考试成绩..."); score = input.nextDouble(); } while(score for (int i = 1; i System.out.print("*"); } System.out.println(); } } }打印九九乘法表。
/* *打印九九乘法表 * i = 1 1个表达式 * i = 2 2个表达式 * i = 3 3个表达式 * i i个表达式 * * 表达式等号左边第一个因子是从1递增到i * 表达式等号左边第二个因子就是i * 表达式等号右边的结果就是 乘积 */ public class DoubleLoopDemo05 { public static void main(String[] args) { for (int i = 1; i System.out.print(j + "x" + i + "=" + (i*j) + "\t"); } System.out.println(); } } }输入一个大写字母,如F
比如:
输入:F
输出:
A
ABA
ABCBA
ABCDCBA
ABCDEDCBA
ABCDEFEDCBA
假设小明去操场跑步,一共要跑10圈,跑到第6圈跑不动了不想跑了怎么办?
可以考虑使用break关键字退出循环
表示退出循环或者switch语句体
由于循环有多层循环,所以如果需要退出多层循环,可以使用break 标签名
break 标签名 退出多层循环或者switch语句
public class BreakDemo01 { public static void main(String[] args) { outLoop: for (int i = 0; i if (j == 3) { break outLoop; } System.out.print("*"); } System.out.println(); } outSwitch: switch (10) { case 10: outLoop: for (int i = 0; i if (j == 3) { break outSwitch; } System.out.print("*"); } System.out.println("outLoop"); } System.out.println("outSwitch"); break; default: break; } System.out.println("哈哈,完了"); } } break关键字经典习题解析。打印1到10个数,遇到4的倍数程序自动退出。
/* * 打印1到10个数,遇到4的倍数程序自动退出。 */ public class BreakDemo02 { public static void main(String[] args) { for (int i = 1; i break; } System.out.println(i); } } }循环录入学生成绩,求和,如果输入的成绩为负数,则停止输入,给出错误提示。
/* * 循环录入学生成绩,求和,如果输入的成绩为负数,则停止输入,给出错误提示。 */ public class BreakDemo03 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int sum = 0; // 死循环格式写法 while (true) { System.out.print("请输入您的成绩: "); double score = input.nextDouble(); if (score public static void main(String[] args) { for (int i = 1; i continue; } System.out.println("正在学习第" + i +"级!!!"); } System.out.println("学完了"); outLoop: for (int i = 0; i if (j == 3) { continue outLoop; } System.out.print("*"); } System.out.println(); } System.out.println("over"); } }循环录入Java课的5个学生的成绩,统计分数大于等于80分的学生比例
package com.sxt.looppractice; import java.util.Scanner; // 1.计算 n+(n-1)+(n-2)+....+3+2+1的值 public class Practice01 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("请输入n的值: "); int n = input.nextInt(); int sum = 0; for (int i = 1; i上一篇:JAVA相关面试题总结
下一篇:java虚拟机
爱鸽者手机版下载v3.2.9 安卓版
243.57MB |商务办公
一品威客网接单app(一品众包)下载v2.7.1 安卓最新版
55.01MB |商务办公
诸葛找房网官方版下载v4.8.1.1 安卓最新版
66.6MB |生活服务
皓盘云建最新版下载v9.0 安卓版
53.38MB |商务办公
ris云客移动销售系统最新版下载v1.1.25 安卓手机版
42.71M |商务办公
粤语翻译帮app下载v1.1.1 安卓版
60.01MB |生活服务
人生笔记app官方版下载v1.19.4 安卓版
125.88MB |系统工具
萝卜笔记app下载v1.1.6 安卓版
46.29MB |生活服务