循环结构:for循环,while循环,do-while,死循环

文章目录

    • for循环
      • for案例:累加
      • for循环在开发中的常见应用场景
    • while
      • while循环案例:
    • for和while的区别:
    • do-while
    • 三种循环的区别小结
    • 死循环

快捷键 ctrl+alt+t

for循环

在这里插入图片描述

看循环执行多少次,就看有效数字有几个
快捷键 fori

示例代码:

package com.zhang.loop;public class ForDemo1 {public static void main(String[] args) {//掌握for循环的书写格式,理解执行流程//需求:打印多行 hello world/** 流程:*   首先会执行初始化语句 int i = 0;*   i = 0,判断循环条件 0 < 3,返回true,计算机会进入到循环中执行输出第一行Hello world,接着执行迭代语句i++;*   i = 1,判断循环条件 1 < 3,返回true,计算机会进入到循环中执行输出第一行Hello world,接着执行迭代语句i++;*   i = 2,判断循环条件 2 < 3,返回true,计算机会进入到循环中执行输出第一行Hello world,接着执行迭代语句i++;*   i = 3,判断循环条件 3 < 3,返回false,循环立即结束。** */for (int i = 0; i < 5; i++) {//5次System.out.println("Hello world");}System.out.println("-----------------------------------");for (int i = 1; i <= 5 ; i++) {//5次System.out.println("hello world2");}System.out.println("-----------------------------");for (int i = 1; i <= 10 ; i += 2 ) {//5次//i  = 1 3 5 7 9System.out.println("hello~~~");}}
}

在这里插入图片描述

for案例:累加

package com.zhang.loop;public class ForDemo2 {public static void main(String[] args) {//目标:使用for批量产生数据//累加//需求1: 产生1~100的数据for (int i = 1; i <= 100 ; i++) {System.out.println(i);}System.out.println("----------------------------------");//需求2:1~100求和int sum = 0;for (int i = 1; i <= 100 ; i++) {sum += i;}System.out.println(sum);System.out.println("------------------------------------");//需求3:1 ~ 100 的奇数和、偶数和//法一:(更推荐,因为能直接得到13579)int sum2 = 0;for (int i = 1; i <= 100 ; i += 2) {sum2 += i;}System.out.println("奇数和是"+sum2);int sum3 = 0;for (int i = 2; i <= 100 ; i += 2) {sum3 += i;}System.out.println("偶数和是"+sum3);System.out.println();//法二:先找出1~100所有数字,再筛选数据int sum4 = 0;for (int i = 1; i <= 100; i++) {if(i % 2 == 1){sum4 += i;}}System.out.println("奇数和是"+sum4);int sum5 = 0;for (int i = 1; i <= 100; i++) {if(i % 2 == 0){sum5 += i;}}System.out.println("偶数和是"+sum5);//如果是累乘,初始化  int rs = 1;}
}

在这里插入图片描述

for循环在开发中的常见应用场景

  • 减少代码的重复编写(多行输出只需要一行),灵活的控制程序的执行(更改次数)
  • 批量产生数据(产生1 - 100)

while

  • 格式:
    在这里插入图片描述

代码演示:

package com.zhang.loop;public class WhileDemo3 {public static void main(String[] args) {//目标:掌握while循环的书写格式,以及理解其执行流程//需求:打印多行hello worldint i = 1;while (i < 6){System.out.println("Hello World!!");//迭代语句i++;}}
}

运行结果:
在这里插入图片描述

while循环案例:

在这里插入图片描述
代码演示:

package com.zhang.loop;public class WhileTest4 {public static void main(String[] args) {//纸张折叠珠穆朗玛峰的高度double peakHight = 8848860;//山峰高度double paperHeight = 0.1;//纸张厚度int count = 0;//需要折叠的次数while(paperHeight < peakHight){paperHeight *= 2;count++;}System.out.println(count);System.out.println(paperHeight);}
}

运行结果:
在这里插入图片描述

for和while的区别:

在这里插入图片描述

do-while

在这里插入图片描述
代码演示:

package com.zhang.loop;public class DoWhileDemo5 {public static void main(String[] args) {//目标:掌握do-while循环的书写格式,执行流程,特点和应用场景//需求:打印多行 hello worldint i = 0;do {System.out.println("hello world!");i++;}while(i < 3);//特点:先执行后判断int j = 0;do {System.out.println("hello1");}while(false);}
}

运行结果:
在这里插入图片描述

三种循环的区别小结

在这里插入图片描述
其他区别我们再次用代码演示:
在这里插入图片描述

package com.zhang.loop;public class DoWhileDemo5 {public static void main(String[] args) {//目标:掌握do-while循环的书写格式,执行流程,特点和应用场景//需求:打印多行 hello worldint i = 0;do {System.out.println("hello world!");i++;}while(i < 3);//特点:先执行后判断int j = 0;do {System.out.println("hello1");}while(false);System.out.println("-----------------------------------");//以下是其他区别的演示for (int m = 1;m <= 3;m++){System.out.println("hi");}
//        System.out.println(m);int n = 0;while (n < 3){System.out.println("hi~~~");n++;}System.out.println(n);}
}

运行结果:
在这里插入图片描述

死循环

在这里插入图片描述

注意:
for( ; ; )
第一个:
在这里插入图片描述
第二个:
在这里插入图片描述
将上面for死循环注释掉,即可运行
在这里插入图片描述

代码演示:

package com.zhang.loop;public class EndlessLoopDemo6 {public static void main(String[] args) {/*      for(;;){System.out.println("Hello World");}
*/
/*        //经典写法:while(true){System.out.println("hi~~~~~~");}*/do{System.out.println("hello!!!");}while(true);}
}

运行结果:
在这里插入图片描述

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

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

相关文章

Mybatis plus核心功能-条件构造器

目录 1 前言 2 使用方法 2.1 where条件部分 2.1.1 基于QueryWrapper 2.1.2 基于LambdaQueryWrapper(推荐&#xff0c;优雅) 2.2 set语句比较特殊的部分 2.2.1 基于UpdateWrapper 2.2.2 基于LambdaUpdateWrapper(推荐&#xff0c;优雅) 3 结尾语 1 前言 Mybatis plus…

Scala Intellij编译错误:idea报错xxxx“is already defined as”

今天写scala代码时,Idea报了这样的错误&#xff0c;如下图所示&#xff1a; 一般情况下原因分两种&#xff1a; 第一是我们定义的类或对象重复多次出现&#xff0c;编译器无法确定使用哪个定义。 这通常是由于以下几个原因导致的&#xff1a; 重复定义&#xff1a;在同一个文件…

docker (十二)-私有仓库

docker registry 我们可以使用docker push将自己的image推送到docker hub中进行共享&#xff0c;但是在实际工作中&#xff0c;很多公司的代码不能上传到公开的仓库中&#xff0c;因此我们可以创建自己的镜像仓库。 docker 官网提供了一个docker registry的私有仓库项目&#…

Linux高级编程:进程(一)

1、进程 1.1什么是进程&#xff1a;进行中的程序&#xff08;正在运行中的程序&#xff09;-process过程 程序的一次执行过程 - 进程 hello.c -- 程序源代码 a.out -- 可执行程序 1.2程序和进程的关系&#xff1a; 程序<------>进程 1.3进程怎么来的&#xff1a; 程…

【大数据架构(3)】Lambda vs. Kappa Architecture-选择你需要的架构

文章目录 一. Data Processing Architectures1. Lambda Architecture1.1. 架构说明a. Data Ingestion Layerb. Batch Layer (Batch processing)c. Speed Layer (Real-Time Data Processing)d. Serving Layer 1.2. Lambda Architecture的优缺点1.3. 使用案例 2. Kappa Architect…

【论文阅读-PRIVGUARD】Day4:3节

3 PRIVANALYZER&#xff1a;强制执行隐私政策的静态分析 本节介绍PRIVANALYZER&#xff0c;这是一个用于强制执行由PRIVGUARD追踪的隐私政策的静态分析器**。我们首先回顾LEGALEASE政策语言&#xff0c;我们使用它来正式编码政策&#xff0c;然后描述如何静态地强制执行它们**…

论文设计任务书学习文档|基于Web的个性化简历职位推荐系统的设计与实现

文章目录 论文(设计)题目:基于Web的个性化简历职位推荐系统的设计与实现1、论文(设计)的主要任务及目标2、论文(设计)的主要内容3、论文(设计)的基本要求4、进度安排论文(设计)题目:基于Web的个性化简历职位推荐系统的设计与实现 1、论文(设计)的主要任务及目标…

163邮箱SMTP端口号及服务器地址详细设置?

163邮箱SMTP端口号是什么&#xff1f;163邮件SMTP设置教程&#xff1f; 除了基本的邮箱账号和密码外&#xff0c;还需要了解SMTP服务器地址和端口号&#xff0c;以及相应的设置。这些设置对于确保邮件能够顺利发送至关重要。下面&#xff0c;蜂邮EDM将详细介绍163邮箱SMTP端口…

JavaScript 进阶03

编程思想 面向过程 面向过程就是分析出解决问题所需要的步骤&#xff0c;然后用函数把这些步骤一步一步实现&#xff0c;使用的时候再一个一个的依次调用 面向对象 面向对象是把事务分解成为一个个对象&#xff0c;然后由对象之间分工与合作。 在面向对象程序开发思想中&a…

[DEBUG] spring boot-如何处理链接中的空格等特殊字符

问题&#xff1a; get或者post中提交的内容可能有空格、#等特殊字符&#xff0c;不做处理的话可能解析错误。 解决&#xff1a; html中&#xff1a; <a th:href"{/listSgrna(id${item.getGeneId()},geneName${item.getGeneName()},genome${genome},sgrnaNum${sgrnaN…

【MATLAB】SVMD_ MFE_SVM_LSTM 神经网络时序预测算法

有意向获取代码&#xff0c;请转文末观看代码获取方式~也可转原文链接获取~ 1 基本定义 SVMD_MFE_SVM_LSTM神经网络时序预测算法结合了单变量分解&#xff08;SVMD&#xff09;、多尺度特征提取&#xff08;MFE&#xff09;、聚类后展开支持向量机&#xff08;SVM&#xff09;…

【文献管理】zotero插件3——翻译与笔记

文章目录 文献翻译——zotero-pdf-translate记笔记——条目笔记记笔记——zoterobetter notes 文献翻译——zotero-pdf-translate 翻译插件zotero-pdf-translate下载划词翻译功能介绍 记笔记——条目笔记 记笔记——zoterobetter notes zotero better notes介绍笔记插件&am…