草庐IT

string与int转换

全部标签

go - 将类型转换为数组 - GO 语法

在下面的syntax_1中,array:=[...]float64{7.0,8.5,9.1}和syntax_2,typePeopleinterface{SayHello()ToString()}typeStudentstruct{Personuniversitystringcoursestring}typeDeveloperstruct{Personcompanystringplatformstring}funcmain(){alex:=Student{Person{"alex",21,"111-222-XXX"},"MIT","BSCS"}john:=Developer{Person

go - 如何将 interface{} 转换为 Golang 中的嵌套树

传入的接口(interface){}会被转换为[]map[string]接口(interface){}。原始数据类型是[]map[string]interface{}:[{"ID":1,"Name":"Root","ParentID":0,"Path":"Root"},{"ID":2,"Name":"Ball","ParentID":1,"Path":"Root/Ball"},{"ID":3,"Name":"Foot","ParentID":2,"Depth":2,"Path":"Root/Ball/Foot"}]希望得到json的类型:[{"ID":1,"Name":"Root","

go语言中字符串解析为int

我有一个像“en=10,ab=15”这样的字符串。我想从中得到10作为一个整数。我无法转换它总是返回ASCII代码的类型。我应该将其转换为map吗? 最佳答案 您可以使用:i:=strings.Index(st,"=")然后n,err:=fmt.Sscan(st[i+1:],&d)尝试this:packagemainimport("fmt""log""strings")funcmain(){st:="en=10,ab=15"i:=strings.Index(st,"=")ifi!=-1{vardintn,err:=fmt.Sscan

go - 将 byte slice 转换为 int slice

我目前正在尝试将一个byte转换为一个int,所以我是这样进行的:vard=[]byte{0x01}val,err:=strconv.Atoi(string(d))我得到这个错误:strconv.Atoi:parsing"\x01":invalidsyntax我试了很多方法都没有成功..有人知道吗? 最佳答案 slice已经包含一个字节值1,而不是ascii字符1,因此无需尝试将其转换为字符串。要将一片byte转换为一片int,请单独转换每个值byteSlice:=[]byte{1,2,3,4}intSlice:=make([]in

json - 将指针转换为其在 json 解码器中的主要值

如何将*string转换为string?这是我的错误代码:cannotusem.Body(type*string)astypestringinargumenttostrings.NewReader这是我的代码:dec:=json.NewDecoder(strings.NewReader(m.Body)) 最佳答案 取消引用指针以从*string获取string的值,然后在strings.NewReader函数中使用它。例如:-strValue:=*m.Bodydec:=json.NewDecoder(strings.NewReade

Golang 类型转换

我对我的项目有具体问题输入="3d6"我想将这个字符串的某些部分转换为整数。例如,我想像整数一样使用input[0]。我该怎么做? 最佳答案 这里有两个问题:如何将字符串转换为整数最直接的方法是Atoistrconv包中的(ASCII到整数)函数,它将接收一串数字字符并将它们强制转换为整数。如何从已知字符串模式中提取有意义的成分为了使用strconv.Atoi,我们需要自己输入数字字符。有很多方法可以对字符串进行slice和切block。您可以直接抓取第一个和最后一个字符-input[:1]和input[2:]是门票。您可以根据字符

go - 为 big.Int 创建了类型别名 - 但我无法使用其指针接收器设置它?

我认为类型别名比嵌入结构更优雅。你看,如果我创建一个嵌入big.Int的新类型BigInt,我必须注意嵌入的big.Int始终被初始化,并且除非我重新实现big.Int,比如Cmp、Add、Sub,所有依赖于这个新类型的代码都需要知道BigInt的方法实际上接收到一个big.Int对于他们的论点。这是愚蠢的。所以我尝试给类型起别名。typeBigIntbig.Int//StringcastsBigIntintobig.IntandusesitsStringmethod.func(b*BigInt)String()string{bc:=big.Int(*b)returnbc.String

json - 如何将 JSON 数组转换为对象

我有以下json{"data":{"0":{"0":"1","1":"Test1","2":"Test2","DT_RowId":"row_1"}}}我要去掉外层索引我想要如下{"data":[{"0":"1","1":"Test1","2":"Test2","DT_RowId":"row_1"}]}这应该在Go中完成。 最佳答案 你必须做这样的事情:packagemainimport("encoding/json""fmt")funcmain(){data1:=make(map[string]map[string]interfac

json - 尝试将 unix 格式的字符串转换为 time.Time 时,使用 json.Unmarshal 给出 ParseError

我有一个包含以下内容的JSON文件:{..."body":"{\"timestampFrom\":\"154087600\"}"...}当我尝试执行时:iferr:=json.Unmarshal([]byte(apiGatewayEvent.Body),&config);err!=nil{glog.Errorf("ErroroccurredwhiletryingtounmarshalbodyofAPIGatewayProxyRequest.Errormessage-%v",err)returnnil,err}我收到:Erroroccurredwhiletryingtounmarshal

go - 如何将指针值转换为原始值

这个问题已经有了答案:HowdoIdereferenceapointerinGo?1答我有一个类型为ip的net.ip变量*net.IP,我将它传递给一个只接受net.IP的查找函数,得到错误;cannotuseip(type*net.IP)astypenet.IPinargumenttoLookup 最佳答案 这就是我在评论中添加的代码。罗比的暗示packagemainimport("fmt")funcderefPointer(importantType*int){fmt.Println(*importantType)}funcm