美文网首页
【Go快速入门】格式化输出函数

【Go快速入门】格式化输出函数

作者: 海阳之新 | 来源:发表于2019-03-07 10:33 被阅读0次

    一、输出函数

    常用有3个:

    • fmt.Printf 格式化输出,不能直接输出非字符型数据,必须使用占位符配合输出
    • fmt.Print 可直接输出,支持打印数组
    • fmt.Println 可直接换行输出,支持打印数组

    注:
    1、使用前需要先导入fmt包:import "fmt"
    2、如果是输出字符串,不能使用单引号,需要使用双引号,否则报错
    3、Print、Println、Printf三个函数都支持直接输出数组,Print、Println类似php中的echo函数

    二、占位符

    占位符 作用
    %d 用于以10进制显示整数类型值
    %X 用于以16进制显示整数类型值
    %f 用于以通常的方法显示浮点数类型值,不包括指数
    %E或%e 用于以带指数部分的表示法显示浮点数类型值,小写e在结果中也显示小写
    %s 用于显示字符串类型值
    %c 用于显示rune类型值代表的字符
    %q 用于显示字符串值的表象值并用双引号包裹
    %v 用于显示逻辑值、数组值、切片值
    %q 用于显示双引号包裹的字符串
    %T 用于输出数据类型

    %d 用于以10进制显示整数类型值
    例如:

    var (
            yyy1 int = 123
            xxx1 int = 456
        )
    fmt.Printf("yyy1 = %d, xxx1 = %d\n", yyy1, xxx1)
    

    显示效果:yyy1 = 123, xxx1 = 456


    %X 用于以16进制显示整数类型值
    例如:

    var num1 int = -0x1000
    fmt.Printf("16进制数 %X 表示的是 %d。\n", num1, num1)
    

    显示效果:16进制数 -1000 表示的是 -4096


    %f 用于以通常的方法显示浮点数类型值,不包括指数
    例如:

    var num2 float32 = 5.89E-4
    fmt.Printf("浮点数 %E 表示的是 %f。\n", num2, num2)
    

    显示效果:浮点数 5.890000E-04 表示的是 0.000589


    %E 用于以带指数部分的表示法显示浮点数类型值
    例子同上。
    小写%e显示效果:浮点数 5.890000e-04 表示的是 0.000589


    %s 用于显示字符串类型值

    yang := "阳阳阳" // :=为推导运算符,在编译的时候自动辨别变量类型,此处编译后为字符型变量
    fmt.Printf("推导定义yang = %s\n", yang)
    

    %c 用于显示rune类型值代表的字符
    例如:

    var sex rune = '男'
    fmt.Printf("字符 '%c' 的Unicode代码点是:%s\n", sex, "U+7537")
    

    显示效果:字符 '男' 的Unicode代码点是:U+7537


    %q 用于显示字符串值的表象值并用双引号包裹
    例如:

    // 声明一个string类型变量并赋值
    var str1 string = "\\\"" //如果有转义字符,用双引号即可,如果没有,用反引号`
    
    // 这里用到了字符串格式化函数。其中,%q用于显示字符串值的表象值并用双引号包裹。
    fmt.Printf("用解释型字符串表示法表示的 %q 所代表的是 %s \n", str1, `\"`)
    

    显示效果:用解释型字符串表示法表示的 "\\\"" 所代表的是 \"


    %v 用于显示逻辑值、数组值、切片值

    var a,b int8 = 1,3
    fmt.Printf("a与b是否相等,结果为:%v\n", a==b)
    

    显示效果:a与b是否相等,结果为:false

    s := []int {1, 2, 3}
    fmt.Printf("我是切片s,长度len为:%d,容量cap为:%d,值为:%v\n",  len(s), cap(s), s)
    

    显示效果:我是切片s,长度len为:3,容量cap为:3,值为:[1 2 3]


    %q 用于显示双引号包裹的字符串
    例如:

    fmt.Printf("小明说:%q", "Go语言是世界上最好的语言")
    

    显示效果:小明说:"Go语言是世界上最好的语言"


    %T 用于输出数据类型
    例如:

    var a uint8 = 111
    fmt.Printf("a的数据类型为:%T", a);
    

    显示效果:a的数据类型为:uint8

    相关文章

      网友评论

          本文标题:【Go快速入门】格式化输出函数

          本文链接:https://www.haomeiwen.com/subject/rkgiuqtx.html