golang类型转化

 int 转 float
var sum int = 17 
mean:= float32(sum)
 
float 转 int
a := 5.0
b := int(a)
 
string 转 int
i,_ := strconv.Atoi("3")
fmt.println(3 + i) // 6
 
int 转 string
fmt.println("a" + strconv.Itoa(32)) // a32

 

interface 转 string
var v1 interface{}="asdf"
fmt.Println(v1.(string))
 
interface 转 int
var v2 interface{}=123
fmt.Println(v2.(int)+1) //124
 
string 转 []byte
var str string = "test"
var b []byte = []byte(str)
 
[]byte 转 string
var str string = string(b)
var str string = string(b[:]) //or

 

对象转json字符串
str,err:=json.Marshal(stu)

 

json字符串转对象
stb := &Student{} 
err = json.Unmarshal([]byte(strData), &stb)

 

Map转json
map1 := make(map[string]interface{})
map1["1"] = "hello"
map1["2"] = "world"
str, err := json.Marshal(map1)  //return []byte
fmt.Println("map to json", string(str))
 
json转map
map2 := make(map[string]interface{}) 
err = json.Unmarshal([]byte(jsonStr), &map2)
 
数组转string
str := string(arr[:]) // 字符数组
 newStr := strings.Join(arr, ",") // 字符串数组
 
string 转 数组
s = strings.Split("abc,abc", ",")
fmt.Println(s, len(s)) //[abc abc] 2 

 

 

 

 

 

 

 

posted @ 2019-02-14 19:07  .追风逐月  阅读(490)  评论(0编辑  收藏  举报