Tôi đang tìm một cái gì đó giống nhưLàm thế nào để tạo ra một chuỗi dài vô hạn trong Kotlin
val allInts = (1..).asSequence()
vì vậy tôi có thể, ví dụ
allInts.take(5)
Tôi đang tìm một cái gì đó giống nhưLàm thế nào để tạo ra một chuỗi dài vô hạn trong Kotlin
val allInts = (1..).asSequence()
vì vậy tôi có thể, ví dụ
allInts.take(5)
val sequence = generateSequence(1) { it + 1 }
val taken = sequence.take(5);
taken.forEach { println(it) }
Đây không phải là thực sự vô hạn, mặc dù: nó sẽ tràn khi Integer.MAX_VALUE là đạt. câu trả lời
Sử dụng Int.MAX_VALUE
như trên ràng buộc. Bạn không thể có số nguyên lớn hơn Int.MAX_VALUE
.
val allInts = (1..Int.MAX_VALUE).asSequence()
JB là tốt nhưng bạn cũng có thể đi với
generateSequence(1, Int::inc)
nếu bạn đang vào toàn bộ điều ngắn gọn.