Break表示退出當前循環.return 表示整個函數的結束,它後面的語句不再執行.
例如
1.在switch中使用break
public void FunTest
{
int a = 1;
switch (a)
{
case 1:
//幾個case可以寫到一起的,比如這裡可以加上case 2:
Console.WriteLine("this is 1");
break;
default:
break;
}
Console.WriteLine("this is end");
}
在switch語句中必須要有break,不然會報錯.輸出結果是This is 1 this is end;
2.switch語句中用return
public void FunTest
{
int a = 1;
switch (a)
{
case 1:
Console.WriteLine("this is 1");
return;
default:
break;
}
Console.WriteLine("this is end");//這條語句不會執行
}
執行到return時整個函數結束,所以第二個輸出語句不會執行.打印結果是this is 1. 這裡的函數沒有返回值所以用return,如有返回值要在return後面加個值
3.for語句中使用break.
public void FunTest()
{
for (int i = 0; i < 4; i++)
{
Console.WriteLine(i);
if (i == 1)
break;
}
Console.WriteLine("end");
}
打印結果是0 1 end,當i為1時break退出整個for循環,所以不會打印2 3
4.for語句中使用return
public int FunTest()
{
for (int i = 0; i < 4; i++)
{
Console.WriteLine(i);
if (i == 1)
return 1;
}
//這後面的語句都不執行了
Console.WriteLine("end");
return 0;
}
這裡的打印結果是01,不會打印end了.函數的返回值是1
5.有finally的函數使用return
雖然大部分時候一執行到return整個函數結束,但有一個特殊情況,如果有finally,那finally中的代碼還是會執行的
public int FunTest()
{
try
{
Console.WriteLine("step one");
return 1;
Console.WriteLine("step two"); //這裡不會執行
}
finally
{
Console.WriteLine("step three"); //這裡會執行
}
return 2; //這裡不會執行
}
這裡的打印結果是step one,step three.函數的返回值是1.另外finally塊裡面是不能有return的
6.continue表示循環塊中它後面的代碼不再執行,繼續循環下去
for (int i = 0; i < 4; i++)
{
if (i == 2)
continue;
Console.WriteLine(i);
}
打印的結果是0 1 3,這裡會跳過打印2
摘自 聰明的笨蛋