第十四届蓝桥杯集训——JavaC组第十三篇——for循环

news2024/11/26 14:31:33

第十四届蓝桥杯集训——JavaC组第十三篇——for循环


目录

第十四届蓝桥杯集训——JavaC组第十三篇——for循环

for循环(重点)

倒序迭代器

for循环死循环

for循环示例

暴力循环

等差数列求和公式

基础循环展开

循环控制语句

break结束

continue继续


 

for循环(重点)

for循环依然依赖于循环四要素。

和 while 和 do while 循环都不太一样的一种循环结构。

道理是和其他两种一样的,都是循环执行代码的。 

语法格式如下:

for (初始值; 表达式; 迭代器) {
    循环体;
}

语法格式示例:

for (int i = 0; i < 10; i++) {
	System.out.println(i);    
}

for循环在一个逻辑表达中体现了除循环体外的其它三要素,这样很大程度上能减少忘记书写迭代器的问题。习惯使用for循环会对你的成长之路有很大的帮助。

for的用法也有很多,各种变化初始值,正序,倒序都可以执行。

倒序迭代器

我们把初始值换成一个较大的数,表达式改成大于0,迭代器的++换成--就能看到倒序输出了。

package com.item.action;

public class Main {

	public static void main(String args[]) {
		for (int i = 10; i > 0; i--) {
			System.out.print(i+",");
		}
	}
}

输出效果: 

for循环死循环

我们在整个for使用的语法中可以看到使用的是【;】来区分于初始值、表达式、迭代器三个内容,我们一般控制循环都是会使用循环的三要素来控制,如果没有迭代器的话一般就会执行死循环,但是我们将整个for循环语法写成:

for(;;){}

这样就会变成一个死循环。

for循环示例

暴力循环

暴力计算100以内的所有的偶数和:

package com.item.action;

public class Main {

	public static void main(String args[]) {
		int sum=0;
		for (int i = 1; i < 101; i++) {
			if(i%2==0) {
				sum+=i;
			}
		}
		System.out.println(sum);
	}
}

输出结果:

等差数列求和公式

等差数列求和公式计算100以内的所有的偶数和:

100以内的偶数有2、4、6、8、10、12、14、16、18、20、22、24、26、28、30、32、34、36、38、40、42、44、46、48、50、52、54、56、58、60、62、64、66、68、70、72、74、76、78、80、82、84、86、88、90、92、94、96、98、100共50个。

2+4+6+8+…+92+94+96+98+100=(2+100)*50/2,那么,这个公式怎么出来的呢?

等差数列求和公式Sn=[n*(a1+an)]/2,其中初始值a1=2,终止于an=100,n=50,导入公式:

Sn=50*(2+100)/2,整理一下好看点:

等差数列求和公式=(2+100)*50/2=2550

package com.item.action;

public class Main {

	public static void main(String args[]) {
		int a1=2;
		int an=100;
		int n=50;
		int sum=(a1+an)*n/2;
		System.out.println(sum);
	}
}

结果输出:

基础循环展开

循环展开1次,按照偶数的规律修改了迭代器每次i+=(1*2)。

package com.item.action;

public class Main {

	public static void main(String args[]) {
		int sum=0;
		for (int i = 2; i < 101; i+=2) {
			sum+=i;
		}
		System.out.println(sum);
	}
}

循环展开2次,循环体中单独添加了一次累计,并按照偶数的规律将迭代器每次i+=(2*2)。

package com.item.action;

public class Main {

	public static void main(String args[]) {
		int sum=0;
		for (int i = 2; i < 101; i+=4) {
			sum+=i;
			sum+=(i+2);
		}
		System.out.println(sum);
	}
}

循环展开3次: 循环体中添加了2次累计,并按照偶数的规律累计了i+=(2*3)。

package com.item.action;

public class Main {

	public static void main(String args[]) {
		int sum=0;
		for (int i = 0; i < 101; i+=6) {
			sum+=i;
			sum+=(i+2);
			sum+=(i+4);
		}
		System.out.println(sum);
	}
}

循环的用法是千变万化的,我们还有循环控制语句。

循环控制语句

break结束

我们之前在学习switch语句的时候认识了这个关键字,代表结束的意思,那么它在循环中也是结束的意思,我们来实验一下:

package com.item.action;

public class Main {

	public static void main(String args[]) {
		for (int i = 0; i < 10; i++) {
			if(i==5) {
				break;
			}
			System.out.print(i+"->");
		}
	}
}

示例结果:

continue继续

继续的含义是不结束所有循环,只结束了当前的此次循环,继续进入到下一次循环。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【图像融合】多尺度奇异值分解图像融合【含Matlab源码 2040期】

⛄一、多尺度奇异值分解的偏振图像融合去雾算法简介 立足于提高传统算法的适应性&#xff0c;提高去雾图像的质量&#xff0c;本文设计了如图 2 所示的去雾算法流程。首先&#xff0c;使用基于最小二乘方法计算出更加精确的偏振信息&#xff0c;改善了以往偏振信息计算不准确的…

基于Qt(C++)实现(PC)学生信息管理系统【100010043】

学生信息管理系统 一、系统指南 本系统为表格式的学生信息管理系统&#xff0c;提供了文件新建、打开及保存功能&#xff0c;还可在表格中对数据进行增加、删除、修改、搜索&#xff0c;下面将一一介绍这些功能 1、新建文件 新建文件将会产生一个全新的空表格&#xff0c;…

基于java+springmvc+mybatis+vue+mysql的少儿编程管理系统

项目介绍 在国家重视教育影响下&#xff0c;教育部门的密确配合下&#xff0c;对教育进行改革、多样性、质量等等的要求&#xff0c;使教育系统的管理和运营比过去十年前更加理性化。依照这一现实为基础&#xff0c;设计一个快捷而又方便的网上少儿编程教育网站系统是一项十分…

原来这就是BFC,遇到样式问题别瞎搞了

看到一篇前端面试题&#xff0c;第一个问题是 什么是BFC &#xff1f;&#xff0c;一下子唤起了我的辛酸回忆&#xff0c;那是在七月&#xff0c;在沪漂找工作的路上&#xff0c;预约的一个电话面试&#xff0c;眼看着时间就要到了&#xff0c;人生第一次进星巴克&#xff0c;提…

leetcode 337. 打家劫舍 III-[python3图解]-递归+记忆化搜索

题目 小偷又发现了一个新的可行窃的地区。这个地区只有一个入口&#xff0c;我们称之为root。除了root之外&#xff0c;每栋房子有且只有一个“父“房子与之相连。一番侦察之后&#xff0c;聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果 两个直接相连…

【Python百日进阶-数据分析】Day130 - plotly柱状图(条形图):go.bar()实例1

文章目录4.2 plotly.graph_objects条形图4.2.1 go的基本条形图4.2.2 分组条形图4.2.3 堆叠条形图4.2.4 带悬停文本的条形图4.2.5 带直接文本标签的条形图4.2.6 使用uniformtext控制文本大小4.2.7 旋转条形图标签4.2.8 自定义单个条颜色4.2.9 自定义单个条的宽度4.2.10 自定义单…

NetInside网络分析为企业IT工作保驾护航(二)

前言 某企业的DMS经销商在线系统&#xff0c;最近一段时间运维人员经常接到反馈&#xff0c;DMS使用出现大量访问慢的情况,针对此情况进行监测分析。 该企业已部署NetInside流量分析系统&#xff0c;使用流量分析系统提供实时和历史原始流量&#xff0c;重点针对DMS系统性能进…

MobileNetV3基于NNI剪枝操作

NNI剪枝入门可参考&#xff1a;nni模型剪枝_benben044的博客-CSDN博客_nni 模型剪枝 1、背景 本文的剪枝操作针对CenterNet算法的BackBone&#xff0c;即MobileNetV3算法。 该Backbone最后的输出格式如下&#xff1a; 假如out model(x)&#xff0c;则x[-1][hm]可获得heatma…

Spring框架04(Spring框架中AOP)

一、spring中bean的生命周期 1.singleton 容器启动的时候创建对象&#xff0c;容器正常关闭时销毁对象 2.prototype 获取对象的时候创建对象&#xff0c;spring容器不负责对象的销毁 生命周期的过程&#xff1a; 1.调用无参创建对象 2.调用set方法初始化属性 3.调用初始化…

知识付费系统源码,可直接打包成app、H5、小程序

知识付费&#xff0c;在近几年来&#xff0c;越来越受到大家的关注。知识付费系统源码是将知识通过互联网渠道变现的方式。以知识为载体&#xff0c;通过付费获得在线知识以及在线学习所带来的收益。知识付费平台主要以分享知识内容&#xff0c;内容分为直播、录播、图文等形式…

【从零开始学爬虫】采集收视率排行数据

l 采集网站 ​【场景描述】采集收视率排行数据。 【源网站介绍】收视率排行网提供收视率排行,收视率查询,电视剧收视率,综艺节目收视率和电视台收视率信息。 【使用工具】前嗅ForeSpider数据采集系统 【入口网址】http://www.tvtv.hk/archives/category/tv 【采集内容】 …

产线工控安全

场景描述 互联网飞速发展&#xff0c;工业4.0的大力推行&#xff0c;让工控产线更加智能化&#xff0c;生产网已经发展成一个组网的计算机环境。这些工控产线组网中的所有工控设备现在统称为主机。 信息化虽然提高各大企业的生产效率&#xff0c;但也会遭遇各类安全问题&…

Problem B: 算法10-15~10-17:基数排序

Problem Description 基数排序是一种并不基于关键字间比较和移动操作的排序算法。基数排序是一种借助多关键字排序的思想对单逻辑关键字进行排序的方法。 通过对每一个关键字分别依次进行排序&#xff0c;可以令整个关键字序列得到完整的排序。而采用静态链表存储记录&#xf…

FAST-LIO论文阅读

1. 摘要 本文提出一个开销较小且鲁棒的激光惯性里程计框架。使用迭代扩展卡尔曼滤波器来实现激光雷达特征点和IMU的紧耦合&#xff0c;可以在快速运动、有噪声或重复纹理等退化环境中鲁棒地定位。为了在测量数据量很大的情况下降低开销&#xff0c;提出了计算卡尔曼增益的新公…

如何做电商运营

电商是通过电子设备和网络技术进行的商业模式&#xff0c;通俗的来说也就是通过网络结识买家完成最终交易。电子商务凭借它便宜&#xff0c;丰富和方便的特性&#xff0c;迅速占领了中国一大半的经济市场&#xff0c;作为个人怎么才能做好电商呢&#xff1f;掌握这几个要点就不…

物联网开发笔记(63)- 使用Micropython开发ESP32开发板之控制ILI9341 3.2寸TFT-LCD触摸屏进行LVGL图形化编程:显示中文

一、目的 这一节我们学习如何使用我们的ESP32开发板来控制ILI9341 3.2寸TFT-LCD触摸屏进行LVGL图形化编程的第一步&#xff1a;显示中文。 二、环境 ESP32 3.2寸 ILI9341触摸屏 Thonny IDE 几根杜邦线 Win10 接线方法&#xff1a;请看上一篇文章。 三、流程介绍 …

Verilog刷题HDLBits——Conwaylife

Verilog刷题HDLBits——Conwaylife题目描述代码结果题目描述 Conway’s Game of Life is a two-dimensional cellular automaton. The “game” is played on a two-dimensional grid of cells, where each cell is either 1 (alive) or 0 (dead). At each time step, each c…

【图像融合】小波变换(加权平均法+局域能量+区域方差匹配)图像融合【含Matlab源码 1819期】

⛄一、小波变换彩色图像融合简介 1 前言 图像融合是将不同传感器所获得的多个图像根据某种算法进行融合处理,取长补短,使一幅图像能够更清楚、更准确地反映多幅图像的信息,多聚焦彩色图像融合是图像融合的一个分支。目前在各种图像采集与分析系统中已使用的CCD数码相机,对于聚…

分享7 个VUE项目用得上的JavaScript库

借助开源库加速VUE项目的开发进度是现代前端开发比较常见的方式&#xff0c;平常收集一些JavaScript库介绍&#xff0c;在遇到需要的时候可以信手拈来。 VUE 生态有很多不错的依赖库或者组件&#xff0c;是使用VUE开发前端的原因之一。 1. vueuse 这是 GitHub 上星最多的库之…

【coarse-to-fine:基于频谱和空间损失约束】

UPanGAN: Unsupervised pansharpening based on the spectral and spatial loss constrained Generative Adversarial Network &#xff08;UPanGAN&#xff1a;基于频谱和空间损失约束的生成式对抗网络的无监督全色锐化&#xff09; 研究发现&#xff0c;在大多数基于神经网…