zoukankan      html  css  js  c++  java
  • Golang的基础数据类型-字符型

             Golang的基础数据类型-字符型

                                作者:尹正杰

    版权声明:原创作品,谢绝转载!否则将追究法律责任。

     

     

     

     

    一.字符型概述

      Go语言中的字符有两种,即uint8类型和rune类型。
        uint8类型:
          我们也可以称之为byte型,代表了ASCII编码表中的一个字符。
          ASCII编码表大家可以自行百度,谷歌查找,大致分为三类:0-31(表示控制字符,在键盘上找不到对应的按键,但是可以使用转义字符表示),32-126(键盘上可以找到的所有字符),127(删除键)

        rune类型:
          代表一个UTF-8字符,当需要处理中文,日文,或者其它国家的符合字符时,则需要用到rune类型。

      byte类型是uint8的别名,对于只占用1个字节的传统ASCII编码的字符来说,完全没问题。

    二.字符型简单应用案例

    1>.byte类型(是uint8的别名)

    package main
    
    import "fmt"
    
    func main() {
    
        /*
            字符(byte)类型是uint8的别名(type为已存在的数据类型起一个别名),在builtin.go文件中可以看到如下的代码:
                type byte = uint8
    
                    ASCII编码表称为美国信息交换码,其结构大致如下:
                0-31:
                    表示控制字符,在键盘上找不到对应的按键,但是可以使用转义字符表示
                32-126:
                    键盘上可以找到的所有字符
                127:
                    删除(del)键
    
            常见的转义字符如下:
                '
    ':
                    换行符,对应ASCII编码表的十进制是10
                '	':
                    水平制表符,对应ASCII编码表的十进制是9
                'v':
                    垂直制表符,对应ASCII编码表的十进制是11
                '
    ':
                    回车,对应ASCII编码表的十进制是13
                '0':
                    数字字符0对应ASCII编码表的十进制为48
                'A':
                    大写字母字符A对应ASCII编码表的十进制是65
                'a':
                    小写字母字符a对应ASCII编码表的十进制是97
                'del':
                    删除键对应ASCII编码表的十进制是127
        */
        var a byte = 'a'
    
        /*
            采用uint8数据格式打印,最终输出的是字符'a'在ASCII所对应的十进制数字编码值为97
        */
        fmt.Println(a)
    
        /*
            %c是一个占位符,表示输出一个字符类型数据。
        */
        fmt.Printf("a的类型为:[%T],a的值为:[%c]
    ", a, a)
    
        var b = '0'
        fmt.Println(b)
    }

    2>.rune类型(是int32的别名)

    package main
    
    import "fmt"
    
    func main() {
    
        /*
            rune代表一个UTF-8字符(支持中文编码),rune类型是int32的别名,在builtin.go文件中可以看到如下的代码:
                type rune = int32
    
            温馨提示:
                自动推导类型创建字符默认均是rune;
                rune是可以向下兼容byte,毕竟int32的数值范围要比uint8大很多倍。
        */
    
        //自动推导类型创建字符默认是rune类型;
        FirstName := ''
    
        fmt.Println(FirstName)
    
        fmt.Printf("FirstName的类型为:[%T],FirstName的值为:[%c]
    ", FirstName, FirstName)
    }

  • 相关阅读:
    产品蔟的创建--抽象工厂模式
    产品蔟的创建--抽象工厂模式
    ASP.NET MVC5+EF6+EasyUI 后台管理系统--工作流演示截图
    ASP.NET MVC5+EF6+EasyUI 后台管理系统--工作流演示截图
    ASP.NET MVC5+EF6+EasyUI 后台管理系统--工作流演示截图
    ASP.NET MVC5+EF6+EasyUI 后台管理系统--工作流演示截图
    一个网站SQL注入的案例
    一个网站SQL注入的案例
    干什么挣钱快,2个冷门项目让你迅速发家致富
    获取 pool的并发数和Pool下成员的并发数
  • 原文地址:https://www.cnblogs.com/yinzhengjie2020/p/12250350.html
Copyright © 2011-2022 走看看