猿问

如何在 go 中对切片进行排序而不改变原始切片

在Golang中,我试图在不改变原始值的情况下对切片进行排序


func main() {

    originalArray := []int{4, 2, 1, 1, 2}

    newArray := originalArray

    sort.Ints(newArray)


    fmt.Printf("%v", originalArray) // prints [1 1 2 2 4]

}

如何在不改变原始值的情况下对切片进行排序?golang


qq_花开花谢_0
浏览 181回答 1
1回答

慕容森

您需要制作原始切片的副本。用:newArray := make([]int, len(originalArray)) copy(newArray, originalArray)艺术newArray := append([]int{}, originalArray...)
随时随地看视频慕课网APP

相关分类

Go
我要回答