2017-01-19 1 views
0

so schnell ihre verändert for-Schleife können Sie nichtFor-Schleife in schnellen verwirrt

tun
for (i = 0; i <10; i++){ 
    //do some stuff 
} 

Sie nur, wenn meine Frage

for i in 0...100 { 
    //do some stuff 
} 

tun können, tun i die i = i + 1? habe ich es versucht, Putting in der for Funktion, aber es funktioniert nicht.

+0

Sie nicht, dass berücksichtigen müssen. – Thili77

+0

Diese Schleife erhöht bereits "i" von 0 auf 100. Verwenden Sie einfach "i" innerhalb der Schleife und versuchen Sie nicht, "i = i + 1" zu tun. – clearlight

Antwort

0

Sie sollten nicht müssen, versuche ich in der for-Schleife zu drucken, die i + 1 bereits jede Schleife sollte

+0

Ich möchte wissen, wie Sie +2 oder 4 oder 5 usw. hinzufügen. –

+1

@DarrenZou verwenden Schrittfunktion für das. sagen wir, wenn Sie +2 für jedes 'für i in Schritt hinzufügen möchten (von: 0, bis: 10, durch 2) {print (i)}' – Thili77

5

Sie verwenden Schritt einen Bereich zu erstellen, wenn Sie einen Zuwachs von etwas brauchen andere als ein :

for i in stride(from: 0, to: 10, by: 2) { 
     print (i) // 0,2,4,6,8 
    } 

    for i in stride(from: 0, through: 10, by: 2) { 
     print (i) // 0,2,4,6,8,10 
    } 

    for i in stride(from: 0, through: 10, by: 2).reversed() { 
     print (i) // 10,8,6,4,2,0 
    } 
+0

funktioniert nicht im Spielplatz .. ich bekomme einen Fehler und es liest nicht Schritt. –

+0

@DarrenZou stellen Sie sicher, dass Sie UIKit importieren –

+0

yeah es wird standardmäßig importiert. –

0

for Schleife in Swift ist wie foreach in anderen Sprachen. Sie können als jede for Schleife denken:

foreach i in (a sequence of values) { 
    // do stuff 
} 

Verschiedene Konstrukte helfen werden bereitgestellt, um Ihnen diese Sequenz schnell aufzubauen und zu kurz und bündig in Code:

0..<n        // a sequence from 0 to (n-1) 
0...n        // a sequence from 0 to n 
stride(from: 0, to: n: by: 3)  // a sequence from 0 to n-1, jumping 3 values at a time 
stride(from: n, to: 0, by: -1)  // a sequence from n down to 1 
stride(from: n, through: 0, by -1) // a sequence from n down to 0