List Kotlin聚合函数

List Kotlin聚合函数,list,kotlin,List,Kotlin,我需要以某种方式编写一个函数,将结果聚合到一个列表中。 我正在使用Order dto(java类) 我有两个API,一个返回订单,另一个返回子订单。因此,我通过预定义的ID检索所有订单并获取循环中的所有子订单: // for example i have a predefined list of order id's List<Long> orderIds = listOf(1L, 2L, 3L, 4L, 5L) val allOrders = orderIds.map {

我需要以某种方式编写一个函数,将结果聚合到一个列表中。 我正在使用Order dto(java类)

我有两个API,一个返回订单,另一个返回子订单。因此,我通过预定义的ID检索所有订单并获取循环中的所有子订单:

// for example i have a predefined list of order id's
List<Long> orderIds = listOf(1L, 2L, 3L, 4L, 5L)

val allOrders = orderIds.map {
    // at first i retrieve an order
    val order = orderService.getOrderById(it.orderId)
    // then i get a list of suborders
    val suborders = suborderService.getSubordersByOrderId(it.orderId)
    // ?
}
//例如,我有一个预定义的订单id列表
List orderIds=listOf(1L、2L、3L、4L、5L)
val allOrders=orderIds.map{
//首先,我检索一个订单
val order=orderService.getOrderById(it.orderId)
//然后我会得到一个子订单列表
val suborders=suborderService.getSubordersByOrderId(it.orderId)
// ?
}
如何将
顺序
(顺序)和
子顺序
(列表)组合到一个顺序列表中,然后将嵌套列表的所有元素合并到一个列表中?

我想这就是您想要的:

val allOrders:List=orderIds.flatMap{
val order=orderService.getOrderById(it)
val suborders=subordersservice.getSubordersByOrderId(it)
子订单+订单
}

它将返回列表中的所有项目全部展平到一个列表中。

合并到同一个列表中?还是成对?也是
Order
?@Animesh-Sahu类型的子订单,这都是关于将订单和列表组合成一个新的List@Egor是的,相同的
子订单+订单
// for example i have a predefined list of order id's
List<Long> orderIds = listOf(1L, 2L, 3L, 4L, 5L)

val allOrders = orderIds.map {
    // at first i retrieve an order
    val order = orderService.getOrderById(it.orderId)
    // then i get a list of suborders
    val suborders = suborderService.getSubordersByOrderId(it.orderId)
    // ?
}