zoukankan      html  css  js  c++  java
  • golang-基础相关:变量、常量、数据类型

    变量

    • 标识符是用来表示GO的变量名或者函数名,以字母或者_开头。后面跟字母或者数字

      例子: A123 adb_123 _a238

    • 关键字是GO语言预先设定好的,具有特殊含义的标识符,在设置变量的时候,不能使用

    变量的语法

    var 变量名称 类型

    例一

    var a int 
    var b string 
    var c bool 
    var d int = 8 
    var e string = “hello”
    

    例二

    如果不设置相关内容,就会走每个类型的默认值

    var ( 
     a int //0 
     b string //“” 
     c bool //false 
     d int = 8 // 8 
     e string = “hello” //hello 
    )
    // 初始化的时候定义变量
    f := 10  // go编译器会自动识别变量的类型
    

    go语言中定义的变量必须被用到,否则会报错(但是也有解决办法:如果定义的变量d未被用到,我们可以使用 _ = d 来忽略变量d

    常量

    定义:常量使用const修饰,代表永远只读的,不能修改,一般用来定义一些公用的不变的变量

    常量的语法

    const 常量名称 [type]=类型 或者 const 常量名称 类型

    例一

    const b string = “hello world” 
    const b = “hello world” 
    const Pi = 3.1414926
    

    例二

    const(
     a = 1 
     b = 2 
     c = 3 
    )
    
    

    iota 的用法

    iota在golang中表示常量计数器

    使用规则

    • 每当const出现时,都会是iota初始化为0
    • const中每新增一行常量声明将使iota计数一次
    const (
     a = iota // a=0 在常量定义中,iota初始化为0 
     b = iota // const常量新增一行,iota加1
     c = 3    // 定义一个常量
     d        // 不赋值,和上一个常量相同
     e = iota // 每定义一次常量都iota都加1,现在已经新增4行,现在e=4
    )
    

    数据类型

    整数和浮点数

    a. int8、int16、int32、int64

    b. uint8、uint16、uint32、uint64

    c. int 和 uint,和操作系统平台相关

    d. float32 和 float64浮点类型

    e. 所有整数 初始化为0,所有浮点数初始化为0.0,布尔类型初始化为false

    说明

    1. go是强类型语言,不用类型之间相加和相互赋值是不允许的
    2. 如果针对两个类型相加,需要转化成一个相同的类型进行计算

    字符串

    string 类型,使用双引号控制

    字符串的底层就是一个byte的数组,可以和[]byte类型相互转换

    例: var a string = "hello word"

    引号说明

    • 双引号: 可以包含控制字符,表示一个字符串,其实质是一个byte类型的数组,可以使用索引和len访问
    • 反引号: 所有的字符都原样输出
    • 单引号:单引号里面只能包含一个字符,默认是 rune类型(等同于int32),输出的值改会自动改为字符的ASCII值。

    字符串的常用操作

    a. ⻓度:len(str)

    b. 拼接:+fmt.Sprintf

    c. 分割:strings.Split

    d. 包含: strings.Contains

    e. 前缀或后缀判断:strings.HasPrefix, strings.HasSuffix

    f. ⼦串出现的位置: strings.Index(), strings.LastIndex()

    **g. **join操作: strings.Join(a[]string, sep string)

    字符串中的占位符

    %v 相应值得默认格式

    %+v 打印结构体时,会添加字段名称

    %#v 相应值的go语法表示,展示map使用

    %T 相应值的类型输出

    %t 布尔值的输出:true或者false

    %d 表示十进制

    %p 表示指针变量的地址

  • 相关阅读:
    goland 创建快捷方式 Linux
    Manjaro-Linux感觉蛮有用的系统问题处理
    Rust 语言九九乘法表
    manjaro 显卡驱动
    Archlinux启动时声音总是静音,需要手动调整音量的解决步
    错误: 无法找到目标文件分割所需的 strip 二进制文件。
    rust 安装添加代理
    2.开启aria2c多线程加速下载
    包无效或损坏(PGP签名)
    zsh的自动完成辅助工具:oh-my-zsh
  • 原文地址:https://www.cnblogs.com/fan-yi/p/13803110.html
Copyright © 2011-2022 走看看