Golangで配列から新しい配列を作成する方法とは
Golangで新しい配列を作成するには、次のようにします。
// 新しい配列を作成する
oldArray := []int{1, 2, 3, 4, 5}
newArray := make([]int, len(oldArray))
// 配列の要素をコピーする
copy(newArray, oldArray)
この例では、既存の配列 oldArray
の要素を新しい配列 newArray
にコピーしています。
len(oldArray)
は、oldArray
の長さを返すので、これにより新しい配列を作成するために使用する長さが決まります。
特定の条件下で、配列の要素の一部のみを新しい配列にコピーすることもできます。
oldArray := []int{1, 2, 3, 4, 5}
newArray := make([]int, 3)
copy(newArray, oldArray[1:4])
// newArray == []int{2,3,4}
新しい配列には、既存の配列 oldArray
のインデックス1から3の要素がコピーされます。
他にも、配列の要素を一つずつ新しい配列に追加しながら作成する方法もあります。
oldArray := []int{1, 2, 3, 4, 5}
var newArray []int
for _, v := range oldArray {
if v%2 == 0 {
newArray = append(newArray, v)
}
}
// newArray == []int{2,4}
この例では、偶数だけを新しい配列に追加しています。
参考: