您当前的位置: 首页 >  Java

星拱北辰

暂无认证

  • 0浏览

    0关注

    1205博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Java】不正当使用break语句的危害

星拱北辰 发布时间:2019-10-06 11:31:13 ,浏览量:0

(这里是临时打的,连IDE都没开,但是建议不要随便用Tab,在IDE里也要设置一下Tab->4*Space)

switch语句块不使用break,导致一直执行

在这里插入图片描述在这里插入图片描述 在这里插入图片描述在这里插入图片描述

其实图1的代码和下面的代码运行结果是一样的……

switch (a) {
case 1:
case 2:
defalut:
	System.out.println("1");
	System.out.println("2");
	System.out.println("3");
}
for( ; ; )、while(true)等无限循环里面不使用break导致真正的“死循环”
//a为输入的值
Scanner scanner = new Scanner(System.in);
String a = scanner.nextLine();
int a = Integer.parseInt(a);
for (;;) {
	if (a == 1) {
		//do something
	} else if (a == 2) {
		//do something
	} else {
		//do something (但是此时应该退出,没有使用break)
	}
}

结果就是死循环呐,不过这只是一个demo,一般人不会写这种代码…… 不过我在写那个置顶的博文——聊天机器人的时候那个系统就是有必要的退出和返回,依靠的就是从“无限循环”中跳出来,虽不见得是break,但思想是类似的。

不使用循环的“标签”,编译器:我咋知道你想break哪个?

Java语法里允许给for循环上一个“标签”(while也有,最后面给一个demo):

public class BreakTest2 {
	public static void main(String[] args) {
		List strList = new ArrayList();
		strList.add("a");
		strList.add("b");
		strList.add("c");
		outer:
		for (String s : strList) {
			for (int i = 0; i             
关注
打赏
1660750074
查看更多评论
0.0423s