程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> JAVA基礎培訓(6),For循環語句的使用

JAVA基礎培訓(6),For循環語句的使用

編輯:關於JAVA

在所有的循環中,最常用的就是for了,另外2個 while和do..while我基本不用。所以 我這裡就把for循環重點介紹一下。

源代碼

package lession6;
/**
* 老紫竹JAVA基礎培訓(6),For循環語句的使用。<br>
*
* @author 老紫竹 JAVA世紀網(java2000.net)
*
*/
public class Lession6 {
  /**
  * for循環有三部分用分號分割<br>
  * 第一部分是初始的數據<br>
  * 中間是判斷是否繼續循環的判斷,如果為true則繼續循環<br>
  * 一次循環後,做的處理,然後再進行中間的判斷<br>
  * 運行順序為<br>
  * 1 初始化<br>
  * 2 中間的判斷<br>
  * 3 循環體<br>
  * 4 循環後處理<br>
  * 轉2 繼續<br>
  */
  public static void main(String[] args) {
   // 循環變量在循環裡面聲明
   for (int i = 1; i <= 10; i++) {
    System.out.print(i);
   }
   System.out.println();
   // 循環變量使用外部的變量
   int i;
   for (i = 1; i <= 10; i++) {
    System.out.print(i);
   }
   System.out.println();
   // 可以使用多個變量和判斷條件和循環後處理,用逗號分隔
   // 初始化,m=0,n=100
   // 循環條件為 m小於10,同時 n大於30
   // 每次循環後處理是 m增加1,n減去5
   for (int m = 0, n = 100; m < 10 && n > 30; m++, n -= 5) {
    System.out.println("m=" + m + ",n=" + n);
   }
   System.out.println();
   // 循環的各個部分是可以省略的
   // 比如省略初始化部分
   int k = 0;
   for (; k < 10; k++) {
    System.out.print(k);
   }
   System.out.println();
   // 省略循環判斷部分
   // 此時默認循環判斷結果為true
   // 也就是死循環了
   // 需要代碼裡進行一些特殊的處理
   k = 0;
   for (;; k++) {
    System.out.print(k);
    if (k > 10) { // 此處使用了 break語句中斷循環
     break;
    }
   }
   // 省略循環後處理部分
   k = 0;
   for (; k < 10;) {
    System.out.print(k);
    k += 2;// 我們可以在循環體裡面修改循環條件變量
   }
   System.out.println();
   // 如果啥都沒有?
   k = 0;
   for (;;) {
    System.out.print(k);
    k += 3; // 內部使用
    if (k > 10) { // 此處使用了 break語句中斷循環
     break;
    }
   }
   System.out.println();
  }
}

測試:

1 所有的循環不只是遞增

大家把所有的判斷改成遞減看看,也就是類似

for(int i=100;i>0;i--)

這樣的例子

2 忽略或退出循環的方式。

大家看一下for循環裡面出現的 break的用法,當然還有一個continue,我這裡給一個 例子,其它的大家自己體會,我就不再細說了。

public static void test() {
   int k = 0;
   for (int i = 100; i >= 0; i--) {
    if (i % 5 == 0) { // 如果能被5整除,則不處理,直接下一個
     continue;
    }
    System.out.println(i);
    k++;
    if (k == 10) { // 如果已經處理了10個,則退出循環了。
     break;
    }
   }
  }

3 循環是可以嵌套的。

下面給一個嵌套打印長方形的例子。大家自己改造成打印三角形的例子吧。

/**
  * 打印正方形的例子
  */
  public static void test2() {
   for (int i = 1; i <= 5; i++) { // 打印行數
    for (int k = 1; k <= 3; k++) { // 每行打印的數量
     System.out.print("*"); // 打印內容
    }
    System.out.println(); // 換行
   }
  }

嵌套循環裡的break和continue可以指定退出哪層循環,默認是當前的一層

/**
  * 嵌套打印的繼續和終端例子。<br>
  * 大家注意語句前面的 OUTER: 和 INNER:的語法, 標簽的名字加上冒號
  */
  public static void test3() {
   OUTER: for (int i = 1; i <= 10; i++) { // 打印行數
    System.out.println(); // 換行挪到這裡,方便看清運行結果
    INNER: for (int k = 1; k <= 3; k++) { // 每行打印的數量
     System.out.print("*"); // 打印內容
     if (i % 2 == 0) { // 內層如果發現行數為偶數行,則不再繼續打印 <
      continue OUTER;
     }
     if (i % 5 == 0) { // 內層如果發現是可以被5整除的行,則退出外部循環
      break OUTER;
     }
    }
   }
  }

for循環必須要掌握,而且要非常熟悉才可以。 如何設置起始,判斷和後處理條件, 如何繼續和中斷循環。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved