Okapi Project

do 文 (どぅーぶん)

バージョン
2003 年 06 月 30 日 Ver.1.1
作成者
K.Takimoto ( Xware )

目的

ある条件式が満たされている間、処理を繰り返し行いたい!

do 文ってなに?

Java のループステートメントのひとつで、while ループと同じように、指定された条件式が真の間は繰り返し対象のコードブロックを繰り返し実行します。

条件式は真または偽を返す式であれば、どんな式でも構いません。

while ループと異なる点は、条件式の判定が処理の後に行われることです。

これを「後判定」といいます。そのため、最初から条件式が偽の場合でも、繰り返し対象のコードブロックは一回は必ず実行されます。

do 文の説明

 do {
   コードブロック;
 } while ( 条件式 );
条件式
ループするコードブロックを処理する条件を記述します。この条件が満たされてるあいだ、do 文はコードブロックを繰り返し処理します。

do 文の使い方

1 〜 10 の数字を足す処理を考えてみましょう。

int i = 1;
int total = 0;
System.out.println("start");
do {
total = total + i;
System.out.println("i = " + i + " , total = " + total);
i = i + 1;
} while ( i <= 10) ;
System.out.println("end");

上記の処理結果は以下のようになります。

start
i = 1 , total = 1
i = 2 , total = 3
i = 3 , total = 6
i = 4 , total = 10
i = 5 , total = 15
i = 6 , total = 21
i = 7 , total = 28
i = 8 , total = 36
i = 9 , total = 45
i = 10 , total = 55
end

条件式が最初から偽の場合

int i = 0;
int count = 0;
System.out.println("start");
do {
count += i;
System.out.println("i = " + i + " , count = " + count);
i--;
} while ( i >= 1) ;
System.out.println("end");

上記の処理結果は以下のようになります。

start
i = 0 , count = 0
end

ポイント

ヒント

メソッドを条件式とすることで、複雑な判定を行なうことも出来ます。

    public void test() {

        do {

            繰り返し処理
		
        } while (this.judge()) ;

    }
	
    public boolean judge(){

        // 様々な処理

        if (判定式){
            return true;
        }else{
            return false;
        }
    }

関連


Copyright © 2003 - 2006 Okapi Project All Rights Reserved.