zoukankan      html  css  js  c++  java
  • go

    一. 整型

    1. 整型

    1. 无符号
        1)int8  1 个字节  -128-127
        2)int16 2个字节
        3)int32
        4)  int64
    2. 有符号
        略

    2. 常用整型

    1. int 有符号。跟随系统,系统是32位的,int就是int32,系统是64位的,int就是int64
    2. uint 无符号的int,位数同int
    3. rune 有符号,同int32,表示一个unicode码
    4. byte 同uint8

    3. 整型的使用细节

    1. 整型分为有符号和无符号,int,uint的大小与系统有关
    2. 整型默认声明为int型
    3. 如何查看摸个变量的字节大小和数据类型
        Printf()    // 格式化输出
    4. 使用过程中尽量在保证程序运行的情况下,使用占用空间小的数据类型

    二. 浮点型

    1. 单精度float32
    2. 双精度float64(默认)
    3. 浮点数都是有符号的
    4. 浮点数可能造成精度损失,推荐使用float64

    三. 字符类型

    1. go中没有专门的字符类型,如果要存储单个字符(字母),一般使用byte来保存
    2. go的字符串就是一串固定长度的字符连接起来的字符序列。
    3. ASCII中的字符可以使用byte来保存
    4. 如果字符对应的码值大于255(例如汉字),我们可以使用int类型
    5. 直接使用fmt.Println()会打印字符的字符的长度,使用fmt.Printf("%c", m1)来打印字符
    6. 字符常量使用单引号''括起来
    7. go语言使用utf8编码
    8. 字符类型是可以运算的,相当于一个整数,运算时是按照其对应的码值来运算的

    四. 布尔类型

    1. 布尔类型只有true和false
    2. 布尔类型占一个字节

    五. string 字符串

    1. 字符串就是一串固定长度的字符连接起来的字符序列。go的字符串是由单个字节连接起来的
    2. 字符串一旦赋值,就不能修改,go中字符串是不可变的
        例:
        var str1 == "hello"
        str1[0] = 'a'  // 报错
    
    3. 字符串的两种表示形式
        1)双引号
        2)反引号(~键),相当于Python中的三引号
    4. 字符串拼接方式使用 +5. 多行字符串拼接时,+号要留在上一行
        "hello" + "world" + "nice" +  
        "to" + "meet" + 
        "you"

    六. 数据类型的转换

    1. 基本数据类型之间的转换

    1. go在不同类型的变量之间赋值时需要显示转换,go的数据类型不能自动转换
    1. go中,数据类型的转换可以从表示范围小-->表示范围大,也可以从范围大-->范围小
    2. 被转换的是变量存储的数据(即值),变量本身的数据类型并没有变化!(目前我的理解是,一个变量对应一块内存空间)
    3. 在转换中,比如将int64 转成int8 ,编译时不会报错,只是转换的结果是按溢出处理,和我们希望的结果不一样,因此转换时要注意考虑范围
    
        var a int 32 = 10
        var b int64 = a + 12  // 错误,a是int32,加12之后还是int32

    2. 基本数据类型和string之间的转换

    1. func Srintf
    参数需要和表达式的数据类型相匹配
    例:
    func main(){
        var num1 int = 99
        var num2 float64 = 23.5
        var b bool = true
        var mychar = 'h'
        var str string
    
        str = fmt.Sprintf("%d", num1)
        str = fmt.Sprintf("%f", num2)
        str = fmt.Sprintf("%f", b)
        str = fmt.Sprintf("%c", mychar)  
    }
    
    2. 使用strconv包的函数
    1) 将一个基本数据类型转为字符串 str
    = strconv.FormatInt(num2, 10) // 默认是将64位整数转为字符串 str = strconv.FormatFloat(num4, 'f', 10, 64) // 小数后10位,float64 str = strconv.FormatBool(b2)
    2)将字符串转为基本数据类型
    strconv.ParseInt(), strconv.ParseFloat(),strconv.ParseBool()

  • 相关阅读:
    牛客网 二叉树的镜像 JAVA
    牛客网 反转链表 JAVA
    牛客网 调整数组顺序使奇数位于偶数前面 JAVA
    Integer to Roman LeetCode Java
    Valid Number leetcode java
    Longest Common Prefix
    Wildcard Matching leetcode java
    Regular Expression Matching
    Longest Palindromic Substring
    Add Binary LeetCode Java
  • 原文地址:https://www.cnblogs.com/JackShi/p/13956623.html
Copyright © 2011-2022 走看看