• golang_listen2


      := 只能在第一次声明时用到 

    var strArr []string  = []string{"10.237.8.2", "10.237.8.3", "10.237.8.3"}

    1.标识符、关键字

    2. 变量和常量 

    3. 数据类型

    4. Go程序基本结构

    标识符,关键字

    1. 标识符是⽤来表示Go中的变量名或者函数名,以字⺟或_开头。后⾯跟着字⺟ 、_或数字

    2 关键字 关键字是Go语⾔预先定义好的,有特殊含义的标识符

     

    变量

    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 )

    普通占位符
    占位符     说明                           举例                   输出
    %v      相应值的默认格式。            Printf("%v", people)   {zhangsan},
    %+v     打印结构体时,会添加字段名     Printf("%+v", people)  {Name:zhangsan}
    %#v     相应值的Go语法表示            Printf("#v", people)   main.Human{Name:"zhangsan"}
    %T      相应值的类型的Go语法表示       Printf("%T", people)   main.Human
    %%      字面上的百分号,并非值的占位符  Printf("%%")            %
    整数占位符
    占位符     说明                                  举例                       输出

    %b 二进制表示 Printf("%b", 5) 101 %c 相应Unicode码点所表示的字符 Printf("%c", 0x4E2D) 中 %d 十进制表示 Printf("%d", 0x12) 18 %o 八进制表示 Printf("%d", 10) 12 %q 单引号围绕的字符字面值,由Go语法安全地转义 Printf("%q", 0x4E2D) '' %x 十六进制表示,字母形式为小写 a-f Printf("%x", 13) d %X 十六进制表示,字母形式为大写 A-F Printf("%x", 13) D %U Unicode格式:U+1234,等同于 "U+%04X" Printf("%U", 0x4E2D) U+4E2D

    常量

    1. 常量使⽤const 修饰,代表永远是只读的,不能修改。

    2. 语法:const identifier [type] = value,其中type可以省略

    const b string = “hello world”

    const b = “hello world”

    优雅的语法

    const(

    a = 1

    b = 2

    c = 3 )

    更加专业的写法

    const (

      a = iota

      b

      c )

    const(

      a = 1 << iota

      b

      c )

    package main
    
    import "fmt"
    
    func main() {
        const (
            a int = 100
            b
            c int = 200
            d
        )
        fmt.Printf("a=%d b=%d c=%d d=%d\n", a, b, c, d)
        // const (
        //     e = iota
        //     f = iota
        //     g = iota
        // )
        const ( //同上原理
            e = iota //默认是0
            f = iota
            g = iota
        )
    
        const (
            a1 = 1 << iota //数字左移
            a2 = 1 << iota
            a3 = 1 << iota
            a4 = 1 << iota
            a5 = 1 << iota
        )
    
        fmt.Printf("e=%d f=%d g=%d \n", e, f, g)
        fmt.Printf("a1=%d a2=%d a3=%d  a4=%d a5=%d\n", a1, a2, a3, a4, a5)
    }
    View Code

    数据类型

    1. 布尔类型

    2. 整数和浮点数类型

    3. 字符串类型

    数据类型和操作符

    1. 布尔类型

    a. var b bool 和 var b bool = true 和 var b = false

    b. 操作符 == 和 !=

    c. 取反操作符: !b  

    d. && 和 || 操作符 e. 格式化输出占位符: %t

    2. 整数和浮点数类型

    a. int8、int16、int32、int64

    b. uint8、uint16、uint32、uint64

    c. int 和 uint,和操作系统平台相关 数据类型和操作符

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

    3. 整数和浮点数类型

    a. Go是强类型语⾔,不同类型相加以及赋值是不允许的 数据类型和操作符

    b. 那怎么样才能实现,不同类型相加呢?

    c. 输出占位符:整数%d,%x⼗六进制,%f浮点数

    4. 字符串类型

    a. var str string 

    b. var str string = “hello world”

    c. 字符串输出占位符%s d. 万能输出占位符: %v

    字符串

    a. 双引号, "",可以包含控制字符

    b. 反引号, ``,所有字符都是原样输出

    字符串常用操作

    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)

    -------------

    a. 逻辑操作符, == 、 != 、<、<=、>=

    b. 算数操作符, +、-、 * 、/、%

    go的基本结构

    1. 任何⼀个代码⽂件⾪属于⼀个包

    2. import 关键字,引⽤其他包:

    import(“fmt”) import(“os”)

    通常习惯写成: import ( “fmt” “os”)

    3. 开发可执⾏程序,package main, 并且有且只有⼀个main⼊⼝函数

    4. 包中函数调⽤:

    a. 同⼀个包中函数,直接⽤函数名调⽤

    b. 不同包中函数,通过包名+点+ 函数名进⾏调⽤

    5. 包访问控制规则:

    a. ⼤写意味着这个函数/变量是可导出的

    b. ⼩写意味着这个函数/变量是私有的, 包外部不能访问

  • 相关阅读:
    使用StreamHttpResponse和FileResponse下载文件的注意事项及文件私有化
    Django中@login_required用法简介
    Django之template
    单链表反转的原理和python代码实现
    两个队列实现栈,两个栈实现队列
    Linux--5 mariadb和redis的安装
    Linux--4
    Linux--3
    Linux--2 Linux之文档与目录结构、shell基本命令
    Linux--1 初识
  • 原文地址:https://www.cnblogs.com/pythonwork/p/16030865.html
Copyright © 2020-2023  润新知