GO——学习笔记(二)

上篇:GO——学习笔记(一)

下篇:GO——学习笔记(三)

参考:

https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/02.2.md

示例代码——go_1

https://github.com/jiutianbian/golang-learning/blob/master/go_1/main.go

一、go基础——关键字

    break    default      func    interface    select 
    case     defer        go      map          struct
    chan     else         goto    package      switch
    const    fallthrough  if      range        type
    continue for          import  return       var

二、go基础——变量与常量

  1. 定义变量

     //变量申明与赋值分离
     var a string         //定义变量名为a的一个string字符串
     a = "nihao,wo shi a" //给变量a赋值
    
     //变量申明与赋值一起
     var b string = "nihao,wo shi b" //定义变量名为b的一个string字符串,直接赋值
    
     //多个变量申明与赋值
     var c, d string = "nihao,wo shi c", "nihao,wo shi d" //一起定义c和d两个字符串,并赋值
    
     //省略变量类型
     var e, f = "nihao,wo shi e", "nihao,wo shi f" //省略了变量类型,编译器会用相应值的类型来帮你初始化它们
    
     //省略变量类型和 var关键字
     g, h := "nihao,wo shi g", "nihao,wo shi h" //省略了var关键字和类型,通过:=来赋值,这边不能用=号,编译器会根据初始化的值自动推导出相应的类型
    
  2. 定义常量

     //定义常量
     const HELLO = "NIHAO"
    

三、go基础——go的基础类型

基础类型

  1. Boolean

     //定义Boolean型
     var isWoking bool = true
    
  2. 数值类型

Go里面定义的整型有:rune, int8, int16, int32, int64和byte, uint8, uint16, uint32, uint64。其中rune是int32的别称,byte是uint8的别称
Go里面定义的浮点类型有float32和float64
Go里面定义的复数类型有complex64

    //定义数值类型
    var i int = 1 //整型

    var j float32 = 6.3 //浮点类型
    var k float64 = 5.4

    //定义复数类型
    var l complex64 = 5 + 5i
  1. 字符串类型

上面go基础——变量与常量中所有的变量和常量都是字符串类型

错误类型

    //定义错误类型
    err := errors.New("chu cuo le,da xiong di")

array、slice、map类型

  1. array 类型

array类型,即是数组

    //定义 array变量
    var arr_1 [3]int = [3]int{1, 2, 3}
    arr_2 := [...]int{4, 5, 6}
  1. slice 类型

array类型,自以为是动态数组,如果有过object-c开发经验的,slice与array就相当于 object-c里面的nsmutablearray与nsarry的区别

    //定义 slice变量,与arry相比少了固定长度的申明
    var slice_1 []int = []int{1, 2, 3} //直接初始化
    slice_2 := arr_1[0:2] //从数组中直接截取
    slice_3 := slice_2[0:1] //从slice中直接截取
  1. map 类型

map类型,键值对,字典,类似java中的hash map,object-c中的nsmutableobject

    // 声明一个key是字符串,值为字符串的字典,这种方式的声明需要在使用之前使用make初始化
    var map_1 map[string]string
    // 另一种map的声明方式
    map_1 = make(map[string]string)
    map_1["one"] = "one"
    map_1["two"] = "two"
    map_1["three"] = "three"

你可能感兴趣的:(GO——学习笔记(二))