Weźmy następujący jedną wkładkę, która może być wyrażona jako serii operacji na zbiorze lub sekwencji:Jak debugować Kotlin sekwencje/Kolekcje
val nums = (10 downTo 1)
// .asSequence() if we want this to be a sequence
.filter { it % 2 == 0 }
.map { it * it }
.sorted()
// .asList() if declaring it a sequence
println(nums) // [4, 16, 36, 64, 100]
powiedzmy chcę zobaczyć elementy na siebie krok, byliby (z odliczeniem):
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
[10, 8, 6, 4, 2]
[100, 64, 36, 16, 4]
[4, 16, 36, 64, 100]
Niestety, nie ma dobry sposób na obu debugowania to z debuggera lub zalogować te wartości do późniejszego wglądu. Dzięki dobrym funkcjom programistycznym, całe metody mogą być przepisywane jako pojedyncze instrukcje, ale wydaje się, że nie ma dobrego sposobu sprawdzania stanów pośrednich, nawet liczb (tutaj: 10, 5, 5, 5
).
Jaki jest najlepszy sposób na ich debugowanie?
To nie są sekwencje, ale zwykłe kolekcje. Napraw tytuł, aby nikogo nie mylić. – voddan
Należy rozróżnić kolekcję i sekwencję. Sekwencja leniwie oblicza listę, więc nie ma [100, 64, 36, 16, 4] w dowolnym momencie podczas wykonywania – D3xter