一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第11天,点击查看活动详情。
哈喽,各位小伙伴们好,我是喵手。
今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流学习,互相学习,才能成长的更快,对吧。
我是一名java开发,所以日常接触到最多的就是java啦,所以我趁自己有空,就来好好回忆,把自己学到的会的,进行输出,不图什么有回报,只想能帮助到更多的小伙伴,就好。
小伙伴们在批阅的过程中,如果觉得文章不错,欢迎点赞、收藏、关注哦。三连即是对喵手我创作道路上最好的鼓励与支持!
一、前言
在Java中常用的循环有三种:分别如右:while,do…while,for。而这些在项目实战中也是经常使用到的,所以今天的教学就是想带着不会的小伙伴学习一下流程控制之循环结构,这对日后实战开发也是在所难免会遇到的,如果说自己循环控制都不能玩的随心应手,那可真的会被老大骂死的呀。
那么接下来,我就带着大家学习一下,常用的流程控制循环。都是最基础的,可得好好学呀。
二、流程控制之循环分类
循环的种类分为:while、do while、及for。虽然还有别的,但是此刻我就不讲解了,后续我会在高阶玩法时详细教学的,这个大家都不用着急。
如下我就讲讲最常用的那仨种控制语句。
1、while
标准语法如下:
while(循环条件){
//循环体;
}
//在满足循环条件时执行循环体,不满足时退出循环。
2、do...while
标准语法如下:
do{
//循环体;
}while(循环条件)
//先执行循环体,后进行判断,当不满足条件时退出循环。
3、for
标准语法如下:
for(表达式1; 表达式2; 表达式3){
//循环体;
}
解读一下:
- 表达式1:初始化参数,只有在第一次进入循环时被执行。
- 表达式2:循环次数的限定条件,在每次循环之前会执行一次。
- 表达式3:循环变量的步长控制,在每次执行循环体之后会执行一次。
只要把握以上三个表达式,for循环语句入门不是问题。
三、break和continue用法
1、break
简而言之就是:跳出当前语句块,在循环中则是跳出当前循环体。
2、continue
简而言之就是:结束当前循环,继续执行下一次循环。
... ...
你们可以总结一下,何时用break何时用continue?
四、案例演示
如下我会讲解两道算法题,结合咱们今天学习的流程控制之循环来解决。解法不是固定的,但是我会用最简单最容易理解的方式给你们讲解的。
具体算法如下:
- 输出1+2+...+10的累加和。
- 输出1-100之内的所有质数。
1、输出1+2+...+10的和?
咱们先来做第一道题:
结合跟本章讲的内容,就会发现,原来学了控制流程之循环,这种题就是小case,非常之简单。
咱们先分析一下,循环数为10,然后在每一次循环就进行数的累加就好啦:
具体实现代码如下:
public static void main(String[] args) {
//定义一个记录累计和的值
int sum = 0;
//进行循环求和
for (int i = 1; i <= 10; i++) {
//进行sum累加
sum += i;
}
//进行sum打印
System.out.println("1 +...+ 10 = "+sum);
}
具体执行截图可看下方:
是不是很简单,这样的话你们就可以自己实现加减乘除啦,就不需要再依赖计算器咯。
2、求1-100之内的质数?
接着做第二道题,首先问问大家何为质数?回忆一下小学数学老师教的,看看还能不能记起来。
哈哈哈,就不考大家了。我来给大家说说质数的概念吧。
“质数也称为素数,质数是一个大于1的自然数,除了1和它自身外,不能被其它自然数整除,这样的数是一个质数。”注意啊:1不是质数,记得排除。
不清楚的同学,可以再理解一下,哪怕背下来也行。对于这道题,知道何为质数的定义,那就简单了,所以咱们先来实现一个判断是否为质数的工具类吧。
/**
* 判断是否为质数
*
* @param num 数字 */public static boolean isZS(int num) {
//先排除1不是质数
if (num < 2) {
return false;
}
//判断当前num是否为质数
for (int i = 2; i <= num - 1; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
判断一个数是否为质数的方法写好了,接着就是使用循环挨个挨个判断是否为质数即可。是不是很简单呐,接着那我就不做演示啦?自己玩一下?
吓唬你们呢,我还是会提供一种我的思路的,给与那些还没学会的同学参照一下,要不然可真就白学啦。
具体代码实现如下:
public static void main(String[] args) {
//用来拼接质数
String zs = "";
//循环判断1-100之间的质数
for (int i = 1; i <= 100; i++) {
//判断当前i是不是质数
if (isZS(i)) {
zs += "," + i;
}
}
System.out.println("1-100之间的所有质数为:" + zs.substring(1, zs.length()));
}
看我写完是不是很简单,其实也是蛮简单的,主要是你们要能理解何为质数,再加上此篇对控制的学习,虽然我两道都是使用的for。所以课后作业来了,要求你们能用其他循环控制语句实现这两道算法题,大家有没有想尝试的。
如下是具体执行截图,可以验证一下输出的质数是不是满足?
好啦,今天的教学内容到这里就要即将结束啦,如果对文中的任何知识点有疑问,欢迎评论区评论留言呀,我看见都会一一解答的。
五、结尾
教学是结束了,但是有些话不知我但讲不当讲,啊哈哈, 可我还是想说给你们听听。如下是我很喜欢的一句话,我打算送给你们,希望我们都能变得更好更优秀。
学习不分先后,知识不分多少;事无巨细,当以虚心求教;三人行,必有我师焉!!!
wished for you successed !!!
---------------------------------------------------------------------
⭐️若喜欢我,就请关注我叭。
⭐️若对您有用,就请点赞叭。
⭐️若有疑问,就请评论留言告诉我叭。