首页 > 文章列表 > golang如何将二维切片展平为一维切片?

golang如何将二维切片展平为一维切片?

golang
195 2023-05-19

问题内容

golang如何将二维切片展平为一维切片?

正确答案

要将二维切片展平为一维切片,你可以使用嵌套的循环来迭代二维切片的元素,并将每个元素添加到新的一维切片中。下面是一个示例代码,演示了如何将二维切片展平为一维切片:

package main

import "fmt"

func flatten(slice [][]int) []int {
    var flattened []int

    for _, row := range slice {
        for _, element := range row {
            flattened = append(flattened, element)
        }
    }

    return flattened
}

func main() {
    slice := [][]int{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}
    flattened := flatten(slice)

    fmt.Println(flattened) // 输出 [1 2 3 4 5 6 7 8 9]
}