• Golang之字符串格式化


    字符串格式化

    // Go 之 字符串格式化
    //
    // Copyright (c) 2015 - Batu
    //
    package main
    
    import (
        "fmt"
    )
    
    type point struct {
        x, y int
    }
    
    func main(){
        // 格式化整型。使用`%d`是一种
        // 标准的以十进制来输出整型的方式
        // 有符号十进制整数(int)(%ld、%Ld:长整型数据(long),%hd:输出短整形。)
        fmt.Println("=====%d,输出十进制====")
        fmt.Printf("%d
    ", 110)
    
        // 输出整型的二进制表示方式
        fmt.Println("=====%b,输出二进制====")
        fmt.Printf("%b
    ", 110)
    
        // 输出整型数值所相应的字符(char):一个字节。占8位
        // 可參考 ASCII
        fmt.Println("=====%c,输出一个值的字符(char)====")
        fmt.Printf("%c
    ",97)
    
        // 输出一个值的十六进制,每一个字符串的字节用两个字符输出
        fmt.Println("=====%x,输出一个值的十六进制,每一个字符串的字节用两个字符输出====")
        fmt.Printf("0x%x
    ", 10)
        fmt.Printf("%x
    ", "abc")
    
        // 输出浮点型数值
        fmt.Println("=====%f,输出浮点型数值====")
        fmt.Printf("%f
    ", 27.89)
    
        // 输出主要的字符串
        fmt.Println("=====%s,输出基本字符串====")
        fmt.Printf("%s-%s-%s
    ","I","am","batu")
    
        // 输出带双引號的字符串
        fmt.Println("=====%q,输出带双引號的字符串====")
        fmt.Printf("%q
    ","string")
    
    
    
        // Go提供了几种打印格式。用来格式化一般的Go值
        p := point{1, 2}
    
        fmt.Println("=====%p,输出一个指针的值====")
        fmt.Printf("%p
    ", &p)
        fmt.Println("=====%v,输出结构体的对象值====")
        fmt.Printf("%v
    ", p)
        // 假设所格式化的值是一个结构体对象。那么`%+v`的格式化输出
        fmt.Println("=====%+v,输出结构体的成员名称和值====")
        fmt.Printf("%+v
    ", p)
        fmt.Println("=====%#v,输出一个值的Go语法表示方式====")
        fmt.Printf("%#v
    ",p)
        fmt.Println("=====%T,输出一个值的数据类型====")
        fmt.Printf("%T
    ",p)
    
        // 当输出数字的时候,常常须要去控制输出的宽度和精度。
        // 能够使用一个位于%后面的数字来控制输出的宽度。默认情况下输出是右对齐的,左边加上空格
        fmt.Println("=====控制输出的宽度和精度====")
        fmt.Printf("|%5d|%5d|
    ", 12, 345)
        fmt.Println("=====输出宽度,同一时候指定浮点数====")
        fmt.Printf("|%5.2f|%5.2f|
    ", 1.2, 3.45)
        fmt.Println("=====左对齐====")
        fmt.Printf("|%-5.2f|%-5.2f|
    ", 1.2, 3.45)
    
    }

    =====%d,输出十进制====
    110
    =====%b,输出二进制====
    1101110
    =====%c,输出一个值的字符(char)====
    a
    =====%x,输出一个值的十六进制,每一个字符串的字节用两个字符输出====
    0xa
    616263
    =====%f,输出浮点型数值====
    27.890000
    =====%s,输出基本字符串====
    I-am-batu
    =====%q,输出带双引號的字符串====
    “string”
    =====%p,输出一个指针的值====
    0xc82000a410
    =====%v,输出结构体的对象值====
    {1 2}
    =====%+v,输出结构体的成员名称和值====
    {x:1 y:2}
    =====%#v,输出一个值的Go语法表示方式====
    main.point{x:1, y:2}
    =====%T,输出一个值的数据类型====
    main.point
    =====控制输出的宽度和精度====
    | 12| 345|
    =====输出宽度,同一时候指定浮点数====
    | 1.20| 3.45|
    =====输出宽度,同一时候指定浮点数====
    |1.20 |3.45 |

  • 相关阅读:
    VC实现开机自启动
    用Shell扩展实现源代码统计程序
    在(CListView)列表视图中添加右键菜单的方法
    关于打开外部程序并且发送一个按键消息 (转
    vc中运行外部程序的方法
    如何在 XCode 4.2 設定部分程式碼不使用 ARC 方式分享(转)
    Xcode调试断点不停止解决方案!(转)
    NSString+NSMutableString+NSValue+NSAraay用法汇总 (转)
    对于Retain和Assign属性的理解(转)
    基于Xcode4开发第一个iPhone程序:“Hello World”(转)
  • 原文地址:https://www.cnblogs.com/yangykaifa/p/7364424.html
Copyright © 2020-2023  润新知