我正在寻找类似的东西
val allInts = (1..).asSequence()
Run Code Online (Sandbox Code Playgroud)
所以我可以,例如
allInts.take(5)
Run Code Online (Sandbox Code Playgroud)
JB *_*zet 15
val sequence = generateSequence(1) { it + 1 }
val taken = sequence.take(5);
taken.forEach { println(it) }
Run Code Online (Sandbox Code Playgroud)
但这并不是无限的:当达到Integer.MAX_VALUE时它会溢出.
使用Int.MAX_VALUE作为上限.您不能有大于的整数Int.MAX_VALUE.
val allInts = (1..Int.MAX_VALUE).asSequence()
Run Code Online (Sandbox Code Playgroud)
JB 的回答很好,但你也可以选择
generateSequence(1, Int::inc)
Run Code Online (Sandbox Code Playgroud)
如果你喜欢整个简洁的事情。
| 归档时间: |
|
| 查看次数: |
1617 次 |
| 最近记录: |