12
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[Swift] while文とdo-while文の違い

Last updated at Posted at 2014-07-06

Apple公式ドキュメントの"The Swift Programming Language" の "A Swift Tour"だと、whileとdo-whileのちがいがわかりにくかったので覚書です

while文とdo-while文のちがい

  • while文は、条件式が偽だと1回も実行されない
  • do-while文は、条件式が偽だとしても必ず1回は実行される。

while文 実行例

WhileSample.swift
var n = 10
while n < 1 {
    println("value \(n)")
    n++
}

実行結果

なし
(1回もprintlnが実行されない)

do-while文 実行例

DoWhileSample.swift
var m = 10
do {
    println("value \(m)")
    m++
} while m < 1

実行結果

value 10
(plintlnが1回だけ実行される)

まとめ

  • while文とdo-while文のちがいが出るのは、条件式がはじめから偽の場合のみ。
  • なので、"The Swift Programming Language"のサンプルコードのような、条件式が1回以上真になるコードだと結果が全く同じになっていしまい、ちがいが分かりにくい。
  • do-while文の使いドコロの説明はこちらがわかりやすかったですdo..while文 - 繰り返し処理 - C言語 入門

参考:The Swift Programming Languageのサンプルコード

while文 実行例

WhileSample2.swift
var n = 2
while n < 100 {
    println("value \(n)")
    n = n * 2
}

実行結果

value 2
value 4
value 8
value 16
value 32
value 64

do-while文 実行例

DoWhileSample2.swift
var m = 2
do {
    println("value \(m)")
    m = m * 2
} while m < 100

実行結果

value 2
value 4
value 8
value 16
value 32
value 64

12
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?