当前位置: 首页 > news >正文

【日撸 Java 三百行】Day 6(For语句)

目录

Day 6:For 语句的基本使用方法

一、基础知识及案例分析

二、代码及测试

拓展:流程控制语句专题补充

小结


Day 6:For 语句的基本使用方法

Task:

  • 循环语句是程序的核心.
  • 算法的时间复杂度一般根据循环语句来计算.

一、基础知识及案例分析

1. 关于循环语句
        循环语句是计算机编程中计算大数据的内容的优势之处,是同时也是简化重复流程的重要方法。
        java的循环语句使用依旧继承类C语言体系,具体循环语句有:

  • while 循环
  • do…while 循环
  • for 循环

        今天主要涉及for循环的使用。for循环在while循环的基础上扩充了固定的初始化部分和递增部分,令定长增长的循坏代码编写变得简单。其余的循环语句请参考相关专题补充。

2. 程序分析
        本测试依旧通过编写函数来模拟每次算法代码核心,同时也将简单的打印操作与赋值操作封装为另外函数完成。main函数只负责简单的驱动作用。
        核心 for 循环函数构造如下:

	/************************ Add from 1 to N.* * @param paraN The given upper bound.* @return The sum.**********************/public static int addToN(int paraN) {int resultSum = 0;for (int i = 1; i <= paraN; i++) {resultSum += i;} // Of for ireturn resultSum;}// Of addToN/************************ Add from 1 to N with a step length* * @param paraN          The given upper bound.* @param paraStepLength The given step length.* @return The sum.**********************/public static int addToNWithStepLength(int paraN, int paraStepLength) {int resultSum = 0;for (int i = 1; i <= paraN; i += paraStepLength) {resultSum += i;} // Of for ireturn resultSum;}// Of addToNWithStepLengthpublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World !");}//of main
}//of class HelloWorld

         这里分别构造的两个函数循环的操作都是求1到N和的操作,分别使用了默认的步长1的递增for循环,以及自定义步长值的for循环操作。
        可以用以下两个数学计算式来表示这两种步长的计算方式:
        1)1到N以步长为1求和:\text{resultSum} = \sum_{i=1}^{N}i
        2)1到N以步长为p求和:\text{resultSum} = \sum_{i=1}^{\frac{N}{p}}[p\times (i-1)+1]

二、代码及测试

        代码如下:

package basic;/*** The usage of sth.** @author: Changyang Hu joe03@foxmail.com* @date created: 2025-05-08*/
public class ForStatement {/*** * @Title: main* @Description: No practical function, only to drive* @param args Not used now* @return void * @throws*/public static void main(String args[]) {forStatementTest();}// Of mainpublic static void forStatementTest() {int tempN = 10;System.out.println("1 add to " + tempN + " is: " + addToN(tempN));tempN = 0;System.out.println("1 add to " + tempN + " is: " + addToN(tempN));int tempStepLength = 1;tempN = 10;System.out.println("1 add to " + tempN + " with step length " + tempStepLength+ addToNWithStepLength(tempN, tempStepLength));tempStepLength = 2;System.out.println("1 add to " + tempN + " with step length " + tempStepLength+ addToNWithStepLength(tempN, tempStepLength));}// Of forStatement/*** * @Title: addToN* @Description: Add from 1 to N.* @param paraN* @return int * @throws*/public static int addToN(int paraN) {int resultSum = 0;for (int i = 1; i <= paraN; i++) {resultSum += i;} // Of for ireturn resultSum;}// Of addToN/*** * @Title: addToWithStepLength* @Description: Add from 1 to N with a step length* * @param paraN				The given upper bound* @param paraStepLength	The given step length* @return the sum* @return int * @throws*/public static int addToNWithStepLength(int paraN, int paraStepLength) {int resultSum = 0;for (int i = 1; i <= paraN; i += paraStepLength) {resultSum += i;} // Of for ireturn resultSum;}// Of addToNWithStepLength
}// Of class ForStatement

        运行结果如下:

        需要注意的是:

        你可能发现1到0求和不难道是0吗?其实不然,循环有个基本条件,就是循环因子要小于等于限定的N才能进入循环,而我们的代码循环因子是从1开始的,而这里第二案例N=0,不满足循环的条件,自然是没有循环的发生,答案也自然是0。
        其余答案带入上述的公式中可以很快验证其正确性。

拓展:流程控制语句专题补充

【Java 专题补充】流程控制语句-CSDN博客


小结

        循环是编写程序的一个非常基本的能力,灵活利用各种循环的嵌套和循环的组合是一个程序员的基本功。

相关文章:

  • python里面的class,类,方法,函数,def
  • 第一次被AI指点出文章的问题
  • 5月8号.
  • 精读计算机体系结构基础 第一章 引言
  • 3.2.3 掌握RDD转换算子 - 4. 按键归约算子 - reduceByKey()
  • C++复习类与对象基础
  • 《信息论与编码课程笔记》——信源编码(1)
  • chili调试笔记14 画线 页面布置 线条导出dxf
  • linux nginx配置访问目录,访问文件直接下载,linux配置nginx直链下载
  • UVa1065/LA3809 Raising the Roof
  • 将通过qDebug、qWarning等输出的信息保存到日志文件中
  • 用递归实现各种排列
  • Java 显式锁与 Condition 的使用详解
  • MySQL 数据库
  • VBA -- 学习Day2
  • STM32系统定时器以及微秒延时函数分析
  • 在openEuler系统下编译安装Redis数据库指南
  • JavaSE核心知识点02面向对象编程02-02(封装、继承、多态)
  • 基于Partial Cross Entropy的弱监督语义分割实战指南
  • Python开发之os.path的常用操作
  • 梵蒂冈选出新教皇,外交部:望新教皇推动中梵关系不断改善
  • 新疆维吾尔自治区乌鲁木齐市米东区政协原副主席朱文智被查
  • 昆明阳宗海风景名胜区19口井违规抽取地热水,整改后用自来水代替温泉
  • 大风暴雨致湖南岳阳县6户房屋倒塌、100多户受损
  • 长三角铁路五一假期发送旅客超2000万人次,同比增幅超一成
  • 胡塞武装称以色列所有机场均为其打击目标