GO Web 基础 (001)

xiaonu · · 1199 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

从这里学习

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 操作

零值


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:xiaonu

查看原文:GO Web 基础 (001)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1199 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传