JAVA中for和while的區別

先用一道筆試題目來引出

下列關于for循環和while循環的說法中哪個是正確的?( )

A.while循環能實現的操作,for循環也都能實現

B.while循環判斷條件一般是程序結果,for循環判斷條件一般是非程序結果

C.兩種循環任何時候都可替換

D.兩種循環結構中都必須有循環體,循環體不能為空

for循環一般表達式:
for(表達式1;表達式2;表達式3)
語句
它的執行過程如下:

  • 先求解表達式1。
  • 求解表達式2,若其值為真(非0),則執行for語句中指定的內嵌語句,然后執行下面第(3)步;若其值為假(0),則結束循環,轉到第5)步。
  • 求解表達式3。
  • 轉回上面第2)步繼續執行。表達式1只執行一次。
  • 循環結束,執行for語句下面的一個語句

while循環一般表達式:
while(表達式)語句
其中表達式是,語句為循環體。
while語句的語義是:計算表達式的值,當值為真(非0)時, 執行循環體語句。其執行過程可用下圖表示。
使用while語句應注意以下幾點:
1、while語句中的表達式一般是關系表達或邏輯表達式,只要表達式的值為真(非0)即可繼續循環。
2、循環體如包括有一個以上的語句,則必須用{}括起來,組成復合語句。

一般在使用時,while循環是你知道條件的前提下才使用的,而for循環是需要知道循環次數。
但是我們也可以在for里面加入if來判斷以及break,而while里面加入判斷條件的變量值自增,從而來達到for和while的互換。

兩者的區別在于增強for循環,while不能實現。
增強for循環一般表達式:
for ( 循環變量類型 循環變量名稱 : 要被遍歷的對象) 循環體

增強for循環和iterator遍歷效果是一樣的,但增強for循環不能再循環里面動態刪除集合內容,不能獲取下標。

public class ForArrary
{
    public static void main (String[] args)
    {
        int[] arr = {1,2,3,4,5,6,7};
        for(int a:arr)
        {
            System.out.print(a);
        }
    }
}

筆試題答案為B

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,765評論 18 399
  • 1 順序語句 語句:使用分號分隔的代碼稱作為一個語句。 注意:沒有寫任何代碼只是一個分號的時候,也是一條語句,...
    哈哈哎呦喂閱讀 408評論 0 0
  • Swift 提供了類似 C 語言的流程控制結構,包括可以多次執行任務的for和while循環,基于特定條件選擇執行...
    窮人家的孩紙閱讀 721評論 1 1
  • Redis 事務 Redis 事務可以一次執行多個命令, 并且帶有以下兩個重要的保證: 事務是一個單獨的隔離操作:...
    stakeing閱讀 192評論 0 0
  • 張靚穎大婚的消息剛刷完屏,然后張媽媽公然反對女兒結婚,大虐女婿的消息又上了熱搜,迅速搶占了各大版塊頭條。 其實,我...
    李翊軒言閱讀 1,094評論 0 1