GO Web 基础 (001)

从这里学习

https://golangcaff.com/docs/build-web-application-with-golang

1.GO的25个关键字

break  default func interface selectcase 

defer go map  struct chan  else   goto  package      

switchconst    fallthrough  if      range        typecontinue

 for          import  return      var


配置环境

定义变量规则:

使用 var 关键字是 Go 最基本的定义变量方式,与 C 语言不同的是 Go 把变量类型放在变量名后面:

// 定义一个名称为 “variableName”,类型为 "type" 的变量

var variableName type

定义多个变量

// 定义三个类型都是 “type” 的变量

var name1 name2 name3 type

//定义变量并且初始化值

var name1 type = value

//同时初始化 多个变量

/*

    定义三个类型都是 "type" 的变量, 并且分别初始化为相应的值

    vname1 为 v1,vname2 为 v2,vname3 为 v3

*/

var vname1,vname2 vname3  type = v1,v2,v3

/*

    定义三个变量,它们分别初始化为相应的值

    vname1 为 v1,vname2 为 v2,vname3 为 v3

    然后 Go 会根据其相应值的类型来帮你初始化它们

*/

简单写法

var vname1,vname2,vname3 = v1,v2,v3

继续简化写法

vname1,vname2,vname3  := v1,v2,v3


常量定义 const

bool 默认为false

数值类型

字符串 GO的字符串是不可变的

iota 枚举型

Go 里面有一个关键字 iota,这个关键字用来声明 enum 的时候采用,它默认开始值是 0,const 中每增加一行加 1

const{

        x = iota  //x = 0;

        y = iota  // y =1;

        z = iota // z= 2;

        w // 常量声明省略值时,默认和之前一个值的字面相同。这里隐式地说 w = iota,因此 w == 3。其实上面 y 和 z 可同样不用 "= iota"

}

const v = iota // 每遇到一个 const 关键字,iota 就会重置,此时 v == 0

const ( h, i, j = iota, iota, iota // h=0,i=0,j=0 iota在同一行值相同)

const ( 

 a = iota // a=0 

 b = "B" 

 c = iota //c=2

 d, e, f = iota, iota, iota //d=3,e=3,f=3 

 g = iota //g = 4

)


Go 程序设计的一些规则

大写字母开头的变量是可导出的,也就是其它包可以读取的,是公有变量;小写字母开头的就是不可导出的,是私有变量。

大写字母开头的函数也是一样,相当于 class 中的带 public 关键词的公有函数;小写字母开头的就是有 private 关键词的私有函数。



array 表述数组

var arr [n]type

在 [n]type 中,n 表示数组的长度,type 表示存储元素的类型。对数组的操作和其它语言类似,都是通过 [] 来进行读取或赋值:

slice 动态数组

slice 有一些简便的操作

slice 的默认开始位置是 0,ar[:n] 等价于 ar[0:n]

slice 的第二个序列默认是数组的长度,ar[n:] 等价于 ar[n:len(ar)]

如果从一个数组里面直接获取 slice,可以这样 ar[:],因为默认第一个序列是 0,第二个是数组的长度,即等价于 ar[0:len(ar)]


map

make new 操作

零值

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容