2015-09-10 3 views
1

Могу ли я поместить это в цикл вместо того, чтобы вручную его вводить для каждой главы?SWIFT: базовые циклы и массивы

   var chp1 = Array(Chapters[0].componentsSeparatedByString("\n")) 
       var chp2 = Array(Chapters[1].componentsSeparatedByString("\n")) 
       var chp3 = Array(Chapters[2].componentsSeparatedByString("\n")) 
       var chp4 = Array(Chapters[3].componentsSeparatedByString("\n")) 
       var chp5 = Array(Chapters[4].componentsSeparatedByString("\n")) 
       var chp6 = Array(Chapters[5].componentsSeparatedByString("\n")) 
       var chp7 = Array(Chapters[6].componentsSeparatedByString("\n")) 
       var chp8 = Array(Chapters[7].componentsSeparatedByString("\n")) 

ответ

3

Да, вы можете использовать

var chp = [] 

for chapter in Chapters 
{ 
    chp.append(chapter.componentsSeparatedByString("\n"))) 
} 

теперь вы можете получить доступ к разделам, как

chp[0] 
chp[1] 
chp[2] 

Также вам не нужно бросать возвращаемое значение Array.

+0

Спасибо. Я не слишком уверен, как бы это организовать. читайте книги, но все равно не получая их:/ – ScarletEnvy

+0

'для i в главах [i] { i = Массив (главы [i] .componentsSeparatedByString (" \ n ")) return i }' – ScarletEnvy

2
for range in 0...8 { 
    var chp = Chapters[range] 
    let result = chp.componentsSeparatedByString("\n")) 
} 

Или

for (_, chapter) in Chapters.enumerate() { 
    let result = chapter.componentsSeparatedByString("\n")) 
} 
Смежные вопросы