私はthis questionで取り組んでいます。Golang:文字列を[] intに変換するには?
文字列をintに変換する必要があります。 この場合、「5 2 4 6 1 3」をたとえば[6] int {5,2,4,6,1,3}に変換する必要があります。 このコードの後には、特にAizuArray()
と書いてあります。 要素がintであると思われますhere。 私の方法が正しいかどうか教えてください。 もっと良い方法を教えてもらえますか? 私は自分のやり方が冗長であり、Java wayがはるかに簡単だと感じているので、これを尋ねます。 ありがとうございます。
package main
import (
"fmt"
"reflect"
"strconv"
"strings"
)
func AizuArray(A string, N string) []int {
a := strings.Split(A, " ")
n, _ := strconv.Atoi(N) // int 32bit
b := make([]int, n)
for i, v := range a {
b[i], _ = strconv.Atoi(v)
}
return b
}
func main() {
A := "5 2 4 6 1 3"
N := "6"
j := strings.Split(A, " ")
for _, v := range j {
fmt.Println(reflect.TypeOf(v))
}
b := AizuArray(A, N)
fmt.Println(b)
for _, v := range b {
fmt.Println(reflect.TypeOf(v))
}
}
、外出先でのサイズは、ホストCPUに依存int型であることに注意してください、それは上の32ビットCPUと64ビットの32ビットですよく、64ビットのCPU。 – OneOfOne
@OneOfOneご意見ありがとうございます。はい、私が 'ParseInt()'を使うと、ネットブックにエラーが発生しました。だから、私は代わりに 'Atoi'を使いました。 – yamachan