星期六, 10月 12, 2013

2013IT鐵人賽-27-Java11-迴圈敘述

2013IT鐵人賽-27-Java11-迴圈敘述



前一篇的文章 2013IT鐵人賽-26-Java10-java判斷複數的條件 我們使用 else if 以及 switch 的方式來判斷複數條件式, 今天我們要來練習迴圈敘述.


先來簡單的整理迴圈的相關資訊.


迴圈(loop)
  • java 內用來處理重複事件的指令
  • 計數迴圈
    • for
  • 條件式迴圈
    • 前測式
      • while
    • 後測式
      • do ~ while  


首先我們來練習 for 迴圈 ^^
我們可以使用 for 來處理重複的事件.



語法如下:


for ( 起始值; 判斷是否重複執行的條件式; 遞增或是遞減運算) {
敘述句1;
敘述句2;
}


今天我的練習在第2個裝置練習(請見 2013IT鐵人賽-16-git04-git基礎練習git pull 與第2裝置使用 的內容).


首先進入我們的 git 資料夾 /home/max/2013ironman (請按自己的設定調整 git 所在資料夾)
>cd    /home/max/2013ironman


將 GitHub  上面的資料同步回來
> git  pull  origin master
From https://github.com/sakanamax/2013ironman
* branch            master     -> FETCH_HEAD
Already up-to-date.


那我們就開始練習吧 ^_^


進入到 java 的練習資料夾
> cd   /home/max/2013ironman/java/


建立一個 java 原始檔如下
> cat   Basic_015_for.java
//這個練習我們使用for 迴圈來處理重複發生的事件


class Basic_015_for {


public static void main(String[] args) {
//設定for 迴圈, 起始值為 1; 繼續迴圈的條件; 遞增或是遞減運算
//所以 i=1, 條件為1 < = 5 就要繼續執行, 所以會執行5次
for(int i=1; i<=5; i++)
{
System.out.println("執行迴圈"+i);
}
System.out.println("迴圈執行結束");


}


}


編譯我們剛剛寫的 java 程式
> javac  Basic_015_for.java


執行剛剛的程式
> java   Basic_015_for
執行迴圈1
執行迴圈2
執行迴圈3
執行迴圈4
執行迴圈5
迴圈執行結束



接下來我們來練習 while 敘述, while 是當判斷的條件為真的時候就會繼續執行


語法如下:


while (條件式){
敘述句1;
敘述句2;
}


建立一個 java 原始檔如下
> cat  Basic_016_while.java
//這個範例我們練習 while 敘述


class Basic_016_while {


public static void main(String[] args) {
//宣告 int 變數 i 為1
int i = 1;
//這邊while 會判斷條件式 i <=5 是否為真, 只要為真就會執行下面的區塊
while ( i <= 5)
{
//列出第 i 次的迴圈
System.out.println("第"+i+"次的迴圈");
//對 i 進行遞增, 以免產生無窮迴圈
i++;
}
//如果迴圈結束, 列印訊息
System.out.println("迴圈結束");


}


}



編譯我們剛剛寫的 java 程式
> javac Basic_016_while.java


執行剛剛的程式
> java   Basic_016_while
第1次的迴圈
第2次的迴圈
第3次的迴圈
第4次的迴圈
第5次的迴圈
迴圈結束



結束了 while 的練習, 接下來我們來進行 do ~ while 的練習, 與前面 while 的不同點是
  • while 如我們剛剛整理的資訊所示, 是會先判斷是否達成條件, 再進行區塊的執行(前測式).
  • do ~ while 的方式則是會先執行區塊然後再來判斷是否要重複執行(後測式).


語法如下:


do {
敘述句1;
敘述句2;
} while  (條件式);



建立一個 java 原始檔如下
> cat   Basic_017_doWhile.java
//這個範例我們要來練習 do while 的迴圈


class Basic_017_doWhile {


public static void main(String[] args) {
//宣告一個 int 變數 i, 值為1
int i = 1;
// do while 與 while 的差別是 do while 會先執行程式, 但是 while 會先判斷
//也就是說 do while 至少會執行一次
do{
//顯示目前是第 i 次的迴圈
System.out.println("第"+i+"次的迴圈");
//設定遞增條件避免無窮迴圈
i++;
//這邊則是在執行完之後才判斷 i 是否 <= 5, 如果成真就繼續執行
}while( i <= 5);
System.out.println("迴圈結束");


}


}


編譯我們剛剛寫的 java 程式
> javac   Basic_017_doWhile.java


執行剛剛的程式
> java  Basic_017_doWhile
第1次的迴圈
第2次的迴圈
第3次的迴圈
第4次的迴圈
第5次的迴圈
迴圈結束


準備將相關檔案傳送到 GitHub 上面
> cd  /home/max/2013ironman/
> git  add   java/*
> git  commit  -m "add java loop files"
[master 634430f] add java loop files
6 files changed, 59 insertions(+)
create mode 100644 java/Basic_015_for.class
create mode 100644 java/Basic_015_for.java
create mode 100644 java/Basic_016_while.class
create mode 100644 java/Basic_016_while.java
create mode 100644 java/Basic_017_doWhile.class
create mode 100644 java/Basic_017_doWhile.java


> git  push  origin master
Username for 'https://github.com': 您的帳號
Password for 'https://sakanamax@github.com':  您的密碼
Counting objects: 11, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (9/9), 2.70 KiB, done.
Total 9 (delta 2), reused 0 (delta 0)
To https://github.com/sakanamax/2013ironman.git
  29e0340..634430f  master -> master



完成今天的迴圈練習 :-)



Fun with Day 27 ~

沒有留言: