はじめに
C言語スタイルのforループをSwift3の文法に書き換える方法について。
@codelynx さんがまとめてくださった記事「Swift 3.0 で C言語スタイルの for ループが廃止されるので、その書き換え方法のまとめ」が親切です。
終了条件に<=を使っている場合について、自分が勘違いしないようにメモを残します。
for var i = 0; i <= end; i += 1
c-style
for var i = 0; i <= end; i += 1 {
}
Swift3
for i in (0 ..< end + 1) {
}
終了条件を<=から<に書き換えるため、end に1を加えています。
それだけです。
(追記) @sora0077@github さんがコメントしてくださったclosed range operatorを使った例のほうがより簡潔です。
Swift3
for i in 0...end {
}
for var i = end ; i >= 0 ; i -= 1
c-style
for var var i = end ; i >= 0 ; i -= 1 {
}
Swift3
for i in (0 ..< end + 1).reverse() {
}
(追記) closed range operatorの例。
Swift3
for i in (0...end).reverse() {
}