Last active
November 29, 2017 03:58
-
-
Save yanjinbin/218e7de4b26956dfd343fac85ec56663 to your computer and use it in GitHub Desktop.
break陷阱
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
func foo_while() { | |
sum := 0 | |
for { | |
// todo 为什么不是100而是101 | |
//sum++ | |
//fmt.Printf("sum的值是%v\n",sum) | |
fmt.Printf("比较前的值%v\n",sum) | |
if sum > 100 { | |
fmt.Printf("\n sum>100 %v\n",sum) | |
break | |
} | |
fmt.Printf("sum++前的值\t%v\n",sum) | |
sum++ | |
fmt.Printf("sum++后的值是%v\n",sum) | |
} | |
fmt.Printf("\nsum的值应该是100 是吗? %v\n", sum) | |
} |
public class Misc {
public static void main(String[] args) {
showBreakOrReturn();
}
public static void showBreakOrReturn(){
int sum = 0;
for(;;){
sum++;
if(sum >100){
System.out.println("sum的值"+sum);
break;
}
// sum++;
}
System.out.println("sum最终的值是"+sum);
}
}
其实java里面也是一样的
所以并不是个break trick
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
为什么 break 是个trick呢 sum+放在line 6还是line14 最后输出的士101 也就是break语句的作用范围