linuxea:go字符串与其他类型的转换(29)


I. 1.字符串与其他类型的转换

转换bool,int

1.1字符串转换Bool类型

如下:

strconv.ParseBool("true")

会返回两个值,其中一个是err,接收两个值,如果err等于nil,说明没有错误,就打印v,如果有错误,就打印。如下:

[root@www.linuxea.com /opt/Golang/work2]# cat strcov.go
package main
import (
    "fmt"
    "strconv"
)
func main(){
    if v,err := strconv.ParseBool("true");err == nil {
        fmt.Println(v)
    } else {
        fmt.Println(err)
    }
}

运行

[root@www.linuxea.com /opt/Golang/work2]# go run strcov.go
true

1.2字符串转换int类型

如下:

strconv.Atoi("1024")

会返回两个值,其中一个是err,接收两个值,如果err等于nil,说明没有错误,就打印v,如果有错误,就打印。如下:

[root@www.linuxea.com /opt/Golang/work2]# cat strcov.go
package main
import (
    "fmt"
    "strconv"
)
func main(){

    if v,err := strconv.Atoi("1024");err == nil{
        fmt.Println(v)
    }else{
        fmt.Println(err)
    }
}

运行

[root@www.linuxea.com /opt/Golang/work2]# go run atoi.go
1024

另外,使用strconv.ParseInt()也可以转换成int类型,但是需要指定转换的字节

    if v,err := strconv.ParseInt("64",16,64);err == nil {
        fmt.Println(v)
    }else{
        fmt.Println(err)
    }
[root@www.linuxea.com /opt/Golang/work2]# go run atoi.go
100

16*6+4=100

1.3字符串转换float

如下:

strconv.ParseFloat("1.024",64)

会返回两个值,其中一个是err,接收两个值,如果err等于nil,说明没有错误,就打印v,如果有错误,就打印。如下:

package main
import (
    "fmt"
    "strconv"
)
func main(){

    if v,err := strconv.ParseFloat("1.024",64);err == nil{
        fmt.Println(v)
        fmt.Printf("%T",v)
    }else{
        fmt.Println(err)
    }
}
0 分享

您可以选择一种方式赞助本站

支付宝扫码赞助

支付宝扫码赞助

日期: 2020-04-16分类: Golang

标签: Golang

发表评论