[C#](note)跳出迴圈之return、break、continue的用法

摘要:[C#]return、break、continue的用法

跳出迴圈的這個流程控制方式:
 
  • ‧break:直接跳出迴圈後,會繼續執行迴圈外的程式
  • ‧return :直接跳出結束那個函式,不會繼續執行迴圈外的程式
  • ‧continue:跳過當前循環體中的當次迴圈(i),進入下一次迴圈(i+1),並回上一層繼續執行迴圈外的程式

廢話不多說,看了以下範例就知了

《break》直接跳出迴圈後,會繼續執行迴圈外的程式


protected void Button2_Click(object sender, EventArgs e)
    {
        int i;
        for (i = 1; i < 10; i++)
        { 
        if (i == 5) break;
        Response.Write(i+"、");
        }
        Response.Write("雖用break,這裡還有迴圈外面的一行程式會繼續被執行喔");   
    }

//得出1、2、3、4,在i=5執行break 跳出了後不再把迴圈執行完,但會繼續執行迴圈外的程式。
//「Response.Write」後面那段仍會被執行到的喔。

 

《return》直接跳出結束那個函式,不會繼續執行迴圈外的程式


 protected void Button3_Click(object sender, EventArgs e)
    {
        int i;
        for (i = 1; i < 10; i++)
        {
            if (i == 5)return;
            Response.Write(i + "、");
        }
        Response.Write("用了return,這裡還有迴圈外面的一行程式'不會'被執行到了喔");
    }

//得1、2、3、4,當 i=5就跳出整個該程式區塊或事件。
//「Response.Write」後面那段
不會被執行到的喔。

 

《continue》跳過當前循環體中的當次迴圈(i),進入下一次迴圈(i+1),並回上一層繼續執行下面未執行的程式


protected void Button4_Click(object sender, EventArgs e)
    {
        int i;
        for (i = 1; i < 10; i++)
        {
            if (i == 5) continue;
            Response.Write(i + "、");
        }
        Response.Write("用了continue,迴圈外面的一行程式'也會'繼續被執行");
    }

//得 1、2、3、4、6、7、8、9、,只少了 5,當 i=5時就不執行i=5時的程式,直接往i=6以下繼續run下面的迴圈及
//繼續執行迴圈外面的未執行完的程式碼。

 



延伸使用的筆記:

**************************************************************************************
類別庫中的某段函式:

 private bool checkFilesize()
        {
            _fileSize = ctlFileUpload.PostedFile.ContentLength;//取得上傳檔案大小
            if(fileSize > allowFileSize)
            {
                string msg = "您上傳的檔案大小是:  " + fileSize + "  K,必須小於: " + allowFileSize + "  k ";
                OtherHelper.showMessageBox("",msg);
                return  false;
            }
            
            return true;
              
        }

aspx網頁程式後端程式碼:

public void oFileUpload()
        {
         ///*驗證是否有選取了檔案 
         checkHasFile();
 
         //***驗證上傳檔案大小是否合法***
         if ( ! checkFilesize( )  )  return;  //成功,可以讓下面↓的函式不再執行下去了。
 
         //*檢查檔名是否有同名
         checkSameName();
 
        //*驗證副檔名是否合法 
         checkExtension();
 
         //*檢查路徑是否存在,不存在就自動建立
         checksavePath();
 
         //*完成檔案上傳動作
           saveFile();
        }
註記:
在IF判別式中使用驚嘆號「 ! 」,把該函式所傳回的true或false做反轉,
例如傳回true,就判為false,傳回false,即就判為true。
 
--
強烈建議購物網店或實體店家都必須使用關鍵字廣告or原生廣告來將Yahoo上與聯播網的廣大流量導至自己的網站!

●Yahoo關鍵字廣告/原生廣告
◆Yahoo廣告方案介紹 : https://goo.gl/5k8FHW
◆Yahoo廣告剖析與運用 : http://goo.gl/4xjUJD

 

​​