不做大哥好多年 不做大哥好多年
首页
  • MySQL
  • Redis
  • Elasticsearch
  • Kafka
  • Etcd
  • MongoDB
  • TiDB
  • RabbitMQ
  • 01.Python
  • 02.GO
  • 03.Java
  • 04.业务问题
  • 05.关键技术
  • 06.项目常识
  • 10.计算机基础
  • Docker
  • K8S
  • 容器原理
  • Istio
  • 01.GO基础
  • 02.面向对象
  • 03.并发编程
  • 04.常用库
  • 05.数据库操作
  • 06.Beego框架
  • 07.Beego商城
  • 08.GIN框架
  • 09.GIN论坛
  • 10.微服务
  • 01.Python基础
  • 02.Python模块
  • 03.Django
  • 04.Flask
  • 05.SYL
  • 06.Celery
  • 10.微服务
  • 01.Java基础
  • 02.面向对象
  • 03.Java进阶
  • 04.Web基础
  • 05.Spring框架
  • 100.微服务
  • 数据结构
  • 算法基础
  • 算法题分类
  • 前置知识
  • PyTorch
  • Langchain
  • Linux基础
  • Linux高级
  • Nginx
  • KeepAlive
  • ansible
  • zabbix
  • Shell
  • Linux内核

逍遥子

不做大哥好多年
首页
  • MySQL
  • Redis
  • Elasticsearch
  • Kafka
  • Etcd
  • MongoDB
  • TiDB
  • RabbitMQ
  • 01.Python
  • 02.GO
  • 03.Java
  • 04.业务问题
  • 05.关键技术
  • 06.项目常识
  • 10.计算机基础
  • Docker
  • K8S
  • 容器原理
  • Istio
  • 01.GO基础
  • 02.面向对象
  • 03.并发编程
  • 04.常用库
  • 05.数据库操作
  • 06.Beego框架
  • 07.Beego商城
  • 08.GIN框架
  • 09.GIN论坛
  • 10.微服务
  • 01.Python基础
  • 02.Python模块
  • 03.Django
  • 04.Flask
  • 05.SYL
  • 06.Celery
  • 10.微服务
  • 01.Java基础
  • 02.面向对象
  • 03.Java进阶
  • 04.Web基础
  • 05.Spring框架
  • 100.微服务
  • 数据结构
  • 算法基础
  • 算法题分类
  • 前置知识
  • PyTorch
  • Langchain
  • Linux基础
  • Linux高级
  • Nginx
  • KeepAlive
  • ansible
  • zabbix
  • Shell
  • Linux内核
  • GO基础

  • 面向对象

  • 并发编程

  • 常用库

    • 01.fmt
    • 02.Time包
    • 03.encoding/json包
    • 04.Flag
    • 05.Log
    • 06.IO操作
    • 07.Strconv
      • 01.string与int类型转换
        • 1.0 strconv包介绍
        • 1.1 Atoi()转int
        • 1.2 Itoa()转str
        • 1.3 string转字符
      • 02.Parse系列函数
        • 1.1 ParseInt()
        • 1.2 ParseFloat()
        • 1.3 ParseBool()
      • 03.Format系列函数
    • 08.net/http
    • 09.Context
    • 10.反射
    • 11.zap日志包
    • 12.viper配置管理
    • 13.gRPC
    • 14.jwt-go
    • 15.go-wrk压测
    • 16.Makefile
    • 17.cobor
    • 18.logrus
    • 19.cron定时
    • 20.machinery
    • 21.regexp2
    • 22.lo
    • 23.泛型
    • 24.pprof
  • 数据库操作

  • Beego框架

  • Beego商城

  • GIN框架

  • GIN论坛

  • 微服务

  • 设计模式

  • Go
  • 常用库
xiaonaiqiang
2021-06-11
目录

07.Strconv

# 01.string与int类型转换

# 1.0 strconv包介绍

  • strconv包实现了基本数据类型与其字符串表示的转换

  • 主要有以下常用函数: Atoi()、Itia()、parse系列、format系列、append系列。

  • 更多函数请查看官方文档 (opens new window)。

# 1.1 Atoi()转int

  • Atoi()函数用于将字符串类型的整数转换为int类型,函数签名如下。
package main
import (
	"fmt"
	"strconv"
)

func main() {
    s1 := "100"
    i1, err := strconv.Atoi(s1)
    if err != nil {
        fmt.Println("can't convert to int")
    } else {
        fmt.Printf("type:%T value:%#v\n", i1, i1) //type:int value:100
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 1.2 Itoa()转str

  • Itoa()函数用于将int类型数据转换为对应的字符串表示
package main
import (
	"fmt"
	"strconv"
)

func main() {
	i2 := 200
	s2 := strconv.Itoa(i2)
	fmt.Printf("type:%T value:%#v\n", s2, s2) //type:string value:"200"
}
1
2
3
4
5
6
7
8
9
10
11

# 1.3 string转字符

package main
import (
	"fmt"
)
func main() {
	s := "hello 张三"
	for _, r := range s { //rune
		// 104(h) 101(e) 108(l) 108(l) 111(o) 32( ) 24352(张) 19977(三) 
		fmt.Printf("%v(%c) ", r, r)
	}
	fmt.Println()
}
1
2
3
4
5
6
7
8
9
10
11
12

# 02.Parse系列函数

# 1.1 ParseInt()

package main
import (
	"fmt"
	"strconv"
)
func main() {
	var s = "1234"
	i64, _ := strconv.ParseInt(s, 10, 64)
	fmt.Printf("值:%v 类型:%T", i64, i64)  // 值:1234 类型:int64
}
1
2
3
4
5
6
7
8
9
10

# 1.2 ParseFloat()

package main
import (
	"fmt"
	"strconv"
)
func main() {
	str := "3.1415926535"
	v1, _ := strconv.ParseFloat(str, 32)
	v2, _ := strconv.ParseFloat(str, 64)
	fmt.Printf("值:%v 类型:%T\n", v1, v1)  // 值:3.1415927410125732 类型:float64
	fmt.Printf("值:%v 类型:%T", v2, v2)  // 值:3.1415926535 类型:float64
}
1
2
3
4
5
6
7
8
9
10
11
12

# 1.3 ParseBool()

package main
import (
	"fmt"
	"strconv"
)
func main() {
	b, _ := strconv.ParseBool("true")   // string 转 bool
	fmt.Printf("值:%v 类型:%T", b, b)  // 值:true 类型:bool
}
1
2
3
4
5
6
7
8
9

# 03.Format系列函数

  • Format系列函数实现了将给定类型数据格式化为string类型数据的功能
package main
import (
	"fmt"
	"strconv"
)

func main() {
	s1 := strconv.FormatBool(true)
	s2 := strconv.FormatFloat(3.1415, 'E', -1, 64)
	s3 := strconv.FormatInt(-2, 16)
	s4 := strconv.FormatUint(2, 16)
	fmt.Printf("%v --%T \n", s1, s1)  // true --string 
	fmt.Printf("%v --%T \n", s2, s2)  // 3.1415E+00 --string 
	fmt.Printf("%v --%T \n", s3, s3)  // -2 --string
	fmt.Printf("%v --%T \n", s4, s4)  // 2 --string 
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
上次更新: 2024/3/13 15:35:10
06.IO操作
08.net/http

← 06.IO操作 08.net/http→

最近更新
01
300.整体设计
06-10
02
06.LangGraph
06-09
03
202.AI销售智能体
06-07
更多文章>
Theme by Vdoing | Copyright © 2019-2025 逍遥子 技术博客 京ICP备2021005373号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式