猿问

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

在 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不改变原始值的情况下对切片进行排序?


aluckdog
浏览 72回答 1
1回答

慕神8447489

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

相关分类

Go
我要回答