使用重复函数的 de 结果创建列表 os Kotlin
Create a list os Kotlin with de result of a repeated function
我有一个很长的方法,它创建一个列表,其结果是一个将两个数字相加的函数:
private fun Add(one: Int, two:Int) : Int {
return one + two
}
private val myList = listOf(
Add(1, 2),
Add(2, 3),
Add(3, 4),
Add(4, 5),
Add(5, 6),
Add(6, 7),
Add(8, 9),
...
)
在 kotlin 中有没有一种方法可以创建这个列表而不必总是重复“添加”函数的名称?
我试过使用“with”和“apply”,但我认为我没有正确使用它。
如果数字是随机生成的,那么您可以使用一些循环来填充列表,例如:
private val myList = genarateAndAdd(20)
private fun generateAndAdd(count: Int): List<Int> {
val list = mutableListOf<Int>()
repeat(count) {
list.add(Add(Random.nextInt(), Random.nextInt()))
}
return list
}
其中 count
是 myList
列表的大小。
你可以使用这个:
import java.util.Random
val random = Random()
val myList = (0..<size of your list>).map{add(random.nextInt(), random.nextInt())}
而不是这个
private val myList = listOf(
Add(1, 2),
Add(2, 3),
Add(3, 4),
Add(4, 5),
Add(5, 6),
Add(6, 7),
Add(8, 9)
)
你可以这样写
private val myList = listOf(
1, 2,
2, 3,
3, 4,
4, 5,
5, 6,
6, 7,
8, 9
).chunked(2).map { Add(it[0],it[1]) }
我有一个很长的方法,它创建一个列表,其结果是一个将两个数字相加的函数:
private fun Add(one: Int, two:Int) : Int {
return one + two
}
private val myList = listOf(
Add(1, 2),
Add(2, 3),
Add(3, 4),
Add(4, 5),
Add(5, 6),
Add(6, 7),
Add(8, 9),
...
)
在 kotlin 中有没有一种方法可以创建这个列表而不必总是重复“添加”函数的名称?
我试过使用“with”和“apply”,但我认为我没有正确使用它。
如果数字是随机生成的,那么您可以使用一些循环来填充列表,例如:
private val myList = genarateAndAdd(20)
private fun generateAndAdd(count: Int): List<Int> {
val list = mutableListOf<Int>()
repeat(count) {
list.add(Add(Random.nextInt(), Random.nextInt()))
}
return list
}
其中 count
是 myList
列表的大小。
你可以使用这个:
import java.util.Random
val random = Random()
val myList = (0..<size of your list>).map{add(random.nextInt(), random.nextInt())}
而不是这个
private val myList = listOf(
Add(1, 2),
Add(2, 3),
Add(3, 4),
Add(4, 5),
Add(5, 6),
Add(6, 7),
Add(8, 9)
)
你可以这样写
private val myList = listOf(
1, 2,
2, 3,
3, 4,
4, 5,
5, 6,
6, 7,
8, 9
).chunked(2).map { Add(it[0],it[1]) }