Dalam bahasa C dan banyak lainnya, ada continuekata kunci yang, ketika digunakan di dalam loop, melompat ke iterasi loop berikutnya. Apakah ada yang setara dengan continuekata kunci ini di Ruby?
Dalam untuk-loop dan metode iterator seperti eachdan mapyang nextkata kunci dalam ruby akan memiliki efek melompat ke iterasi berikutnya dari loop (sama seperti continuedi C).
Namun apa yang sebenarnya dilakukannya hanyalah kembali dari blok saat ini. Jadi, Anda dapat menggunakannya dengan metode apa pun yang membutuhkan blok - meskipun tidak ada hubungannya dengan iterasi.
Jawaban:
Ya, itu disebut
next
.Ini menghasilkan yang berikut:
sumber
next
) di atas C (continue
)next
juga, lihat
redo
mana yang mengulangi iterasi saat ini .sumber
redo
perintah Perl (atau esensinya, sih). Untuk interpretasi Ruby, cari "redo" di halaman ini .Menulis jawaban Ian Purton dengan cara yang sedikit lebih idiomatis:
Cetakan:
sumber
Dalam untuk-loop dan metode iterator seperti
each
danmap
yangnext
kata kunci dalam ruby akan memiliki efek melompat ke iterasi berikutnya dari loop (sama seperticontinue
di C).Namun apa yang sebenarnya dilakukannya hanyalah kembali dari blok saat ini. Jadi, Anda dapat menggunakannya dengan metode apa pun yang membutuhkan blok - meskipun tidak ada hubungannya dengan iterasi.
sumber
Ruby memiliki dua kata kunci kontrol pengulangan / iterasi lainnya:
redo
danretry
. Baca lebih lanjut tentang mereka, dan perbedaannya, di Ruby QuickTips .sumber
Saya pikir ini disebut selanjutnya .
sumber
Gunakan selanjutnya, itu akan melewati kondisi itu dan sisa kode akan bekerja. Di bawah ini saya telah menyediakan script lengkap dan put out
Output: Masukkan nmber 10
1 2 3 4 6 7 8 9 10
sumber