golang数字与字符串转换

一、字符串与int之间的转换

(一)、字符串转int

1.string转成int

import "strconv"

num, err := strconv.Atoi("100")

2.string转int,int8,int16,int32,int64.....

2.1 string转int

import "strconv"
int, err := strconv.ParseInt("100", 10, 0)

2.2 string转int8

import "strconv"

num, err := strconv.ParseInt("100", 10, 8)
第二个参数为基数(2~36),第三个参数位大小表示期望转换的结果类型,其值可以为0, 8, 16, 32和64,分别对应 int, int8, int16, int32和int64

2.3 string转int32

import "strconv"

num32, err := strconv.ParseInt("100", 10, 32)

2.4 string转成int64

import "strconv"

num64, err := strconv.ParseInt("100", 10, 64)

 注意:uint8也叫做byte,int32也叫做rune

 

(二)、int转字符串

1.int转string

import "strconv"

s := strconv.Itoa(int64(123), 10)

2.int,int8,int32,int64转string

import "strconv"

s := strconv.FromInt(int64(123), 10)
第二个参数为基数,可选2~36

s := strconv.FromInt(int32(123), 10)


s := strconv.FromInt(int8(123), 10)

 

二、字符串与float之间转换

(一)、字符串转float

1. string转float32

import "strconv"

f32, err := strconv.ParseFloat("3.14159", 32)

2. string转float64

import "strconv"

f64, err := strconv.ParseFloat("3.14159", 64)

注:对于无符号整形,可以使用FormatUint(i uint64, base int)

 

(二)、float转字符串

string := strconv.FormatFloat(float32, 'E', -1, 32)
string := strconv.FormatFloat(float64, 'E', -1, 64)

 

 

三、int与float之间转换

一)float转Int

var x float64 = 5.7
var y int = int64(x)

(二)、int转float

var x int64 =12
var y float64 = float64(x)

 

posted on 2021-11-02 12:53  myworldworld  阅读(6249)  评论(0编辑  收藏  举报

导航