break、continue、return

2024-06-08 17:52
文章标签 return continue break

本文主要是介绍break、continue、return,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

break

程序示例:

// 产生一个位于 [1, 100] 范围内的随机数,统计产生 100 所需要的次数
public static void main(String[] args) {// System.out.println(Math.random());  // [0,1)// System.out.println(Math.random() * 100);  // [0,100)// System.out.println((int) (Math.random() * 100));  // [0,99]// System.out.println((int) (Math.random() * 100) + 1);  // [1,100]int count = 0;while (true) {int a = (int) (Math.random() * 100) + 1;System.out.println(a);++count;if (a == 100)break;}System.out.println(count);
}

对于位于循环内部的 break,默认情况下都是结束当前最近位置的循环,但是可以用标签修改这一默认设置,明确指定想要结束的循环。如果外部循环结束了,那么内部循环当然也就结束了。

程序示例:

public static void main(String[] args) {abc1:for (int i = 1; i <= 10; i++) {abc2:for (int j = 0; j <= 10; j++) {if (j == 2)break abc1;    //结束外层 forSystem.out.println(j);}}
}

执行结果:

0
1

程序示例:

public static void main(String[] args) {int n = 0;int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;if (sum >= 20) {n = i;break;}}System.out.println("sum = " + sum);System.out.println("n = " + n);     // 如果在定义 n 时不赋值初始值,则此处会报错:可能尚未初始化变量 n
}

执行结果:

sum = 21
n = 6

程序示例:

import java.util.Scanner;public class test {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String name;String ps;for (int chance = 3; chance > 0; chance--) {System.out.println("输入姓名:");name = sc.next();System.out.println("输入密码:");ps = sc.next();if ("小李".equals(name) && "899".equals(ps)) {System.out.println("登录成功");break;}System.out.println("输入错误,还有 " + (chance - 1) + " 次机会.");}}
}

程序示例:

// 求平方根
// 需求:键盘录入一个大于等于 2 的整数 ×,计算并返回 x 的平方根。
// 结果只保留整数部分,小数部分将被舍去。import java.util.Scanner;public class test {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.print("请输入一个整数:");int number = sc.nextInt();for (int i = 1; i <= number; i++) {if (i * i == number) {System.out.println(i + "是" + number + "的平方根");break;} else if (i * i > number) {System.out.println((i - 1) + "是" + number + "的平方根的整数部分");break;}}}
}

程序示例:

// 需求:键盘录入一个正整数 x,判断该整数是否为一个质数。import java.util.Scanner;public class test {public static void main(String[] args) {System.out.print("请输入一个正整数:");Scanner sc = new Scanner(System.in);int number = sc.nextInt();boolean flag = true;for (int i = 2; i * i <= number; i++) {if (number % i == 0) {flag = false;break;}}if (flag) {System.out.println(number + "是质数。");} else System.out.println(number + "不是质数。");}
}

程序示例:

// 需求:程序自动生成一个 [1, 100] 之间的随机数字,使用程序实现猜出这个数字是多少?import java.util.Scanner;public class test {public static void main(String[] args) {int random_number = (int) (Math.random() * 100 + 1);System.out.print("请猜这个数是多少:");Scanner sc = new Scanner(System.in);int number = sc.nextInt();while (number != random_number) {if (number < random_number) {System.out.print("猜小了,再来:");number = sc.nextInt();} else {System.out.print("猜大了,再来:");number = sc.nextInt();}}System.out.println("猜对了");}
}

执行结果:

请猜这个数是多少:50
猜小了,再来:75
猜小了,再来:85
猜小了,再来:90
猜小了,再来:95
猜小了,再来:97
猜大了,再来:96
猜对了

另一种写法:

// 需求:程序自动生成一个 [1, 100] 之间的随机数字,使用程序实现猜出这个数字是多少?import java.util.Random;
import java.util.Scanner;import java.util.Random;
import java.util.Scanner;public class test {public static void main(String[] args) {// 利用 Random 类获取随机数Random r = new Random();// 左闭右开区间int random_number = r.nextInt(100) + 1;// 生成任意范围内的值的方法:// 1. 左右区间都减去左区间// 2. 右区间加 1// 3. 这个右区间的值,就是 nextInt() 里面要输进去的值// 4. 将 nextInt() 外面加原来的左区间// 比如,要生成 [7, 15]// 先减去左区间,得到 [0, 8]// 右区间加 1,得到 [0, 9]// 最终的写法为 r.nextInt(9) + 7Scanner sc = new Scanner(System.in);while (true) {System.out.print("猜这个数字是多少:");int guessNum = sc.nextInt();if (guessNum > random_number)System.out.println("猜大了,再来。");else if (guessNum < random_number)System.out.println("猜小了,再来。");else {System.out.println("猜中了");break;}}}
}

对于 for 循环,break 结束后,直接执行 for 循环后面的语句,不会执行 for 循环头中的表达式 3。对于 while 循环,break 结束后,执行 while 循环后面的语句。

continue

程序示例:

public class Continue {public static void main(String[] args) {abc1:for (int i = 0; i < 2; i++) {abc2:for (int j = 0; j < 5; j++) {if (j == 2)// continue; //等价于continue abc2;continue abc1;  // 结束外层 for 循环System.out.println(j);}}}
}

执行结果:

0
1
0
1

对于 for 循环,continue 结束后,执行 for 循环头中的表达式 3,再执行判断条件,判断是否继续循环。对于 while 循环,continue 结束后,执行 while 循环头的判断表达式。

return

return 多使用在方法中,表示跳出所在的方法。

如果 return 写在 main 中,表示退出程序。

程序示例:

public class Return {public static void main(String[] args) {for (int i = 0; i <= 10; i++) {if (i == 3) {System.out.println(i);return;}System.out.println("ok" + i);}System.out.println("hello");}
}

执行结果:

ok0
ok1
ok2
3

这篇关于break、continue、return的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1042890

相关文章

javascript中break与continue的区别

在javascript中,break是结束整个循环,break下面的语句不再执行了 for(let i=1;i<=5;i++){if(i===3){break}document.write(i) } 上面的代码中,当i=1时,执行打印输出语句,当i=2时,执行打印输出语句,当i=3时,遇到break了,整个循环就结束了。 执行结果是12 continue语句是停止当前循环,返回从头开始。

Go 语言中Select与for结合使用break

func test(){i := 0for {select {case <-time.After(time.Second * time.Duration(2)):i++if i == 5{fmt.Println("break now")break }fmt.Println("inside the select: ")}fmt.Println("inside the for: ")}} 执行后

switch中的break控制

#include<iostream>using namespace std;int main(){int i=10;switch(i){case 9:i+=1;case 10:i+=1;case 11:i+=1;default:i+=1;}cout<<i<<endl;return 0;} 上面的结果是13; #include<iostream>using namespace s

Java中break和continue的区别?

for(int i=0;i<5;i++){ if(i==3) { continue; //继续循环 //break; //中断循环 } System.out.println(i); } 以上输出0 1 2 4 如果换成break,输出0 1 2

try -catch-finally的理解,同时在try-catch-finally中含有return和throws的理解

在没有try-catch或try-catch-finally的情况下,程序正常执行到某行,在这行报错后,这行后面的代码就不执行了,程序就停止了,中断了。 例如   在有try-catch或try-catch-finally 情况上,在某行执行错误,在try中这行下的代码不执行,try外的代码执行。当然是catch在没有做处理的情况下。如果catch中做了处理,在不影响当前程序下,try

王立平--AES加密图片实现 SkImageDecoder::Factory return null

这个问题是在加密图片,存入sd卡,在解密出来展示,出现的。我个人研究了很久没解决。最后经过高人指点,终于解决了。 在此,拿出来分享,希望各位少走弯路。 我之前的设计思路是:(可以不看哦) 1.把图片从drawable读入成bitmap 2.bitmap-->byte 3.调用AES的byte加密算法。 4.加密成byte,在转化为string 5,把string存入sd卡。

java复习第九课,break和continue语句

break:终止整个循环。在任何循环语句的主题部分,均可用break控制循环流程。break用于强行推出循环,不执行循环剩下的语句。 比如:当我循环打印1到10的数字,在数字8后加break,遇到break语句后,强行跳出循环体,不在往下执行。 continue:终止当次循环,执行下一次。语句用在循环语句体重,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环

VS2013 + QT5.7.0静态编译 错误 .NMAKE:fatal error U1077. return code 0x2,使用 类 模板 需要 模板 参数列表

最近准备搞下QT,早有耳闻,QT的动态库机制让QT的程序大的无比,这我肯定是不能容忍的,准备使用静态库的方式,那就编译源码吧! 下面我说下环境以及碰到的问题 文章参考了http://blog.csdn.net/u011964923/article/details/52886908 ,但是我的报错了。。。下面是解决. 1.环境问题 1.QT版本 :qt5.7  qt-op

【C++】win7 64下VC++6.0(Unable to register this add-in because its DLLRegisterServer return an error)

 FileTool.exe用于替换 Visual C++ 使用开发人员 Studio 对象模型中的打开和添加到项目菜单项。也是一个修复 VC6.0打开文件时出错退出的插件。 1. 下载FileTool.exe,并解压 2. 打开VC6.0,点击File-Open Workspace,选择刚解压出来的FileTool.dsw,并确定 3. 点击Bulid-Build FileTool.

Python控制流:循环控制(break, continue, pass)③

文章目录 前言1. 循环结构1.1 `for` 循环1.2 `while` 循环 2. 循环控制语句2.1 `break` 语句2.2 `continue` 语句2.3 `pass` 语句 3. 综合详细的例子:银行账户管理系统3.1 类和方法`BankAccount` 类 3.2 主函数 4. 循环控制语句的常见用法4.1 使用 `break` 终止无限循环4.2 使用 `continu