Go语言基础语法笔记1

64 阅读2分钟

●  基础语法笔记

●  DOS命令

●  简介:Disk Operating System,通过win+r打开,不区分大小写

●  具体DOS命令

●  切换磁盘符: c:  d:

●  显示详细信息:dir

●  改变当前目录:cd + 文件夹名

●  . 代表当前目录,.. 代表上一层目录

●  清屏:cls

●  切换历史命令:上下箭头键

●  可以用tab补全

●  创建目录:md 删除目录:rd  (remove directory)

●  复制文件:copy [文件名] [目录名] [要复制到的文件名]

●  eg:  copy  [demo.text]  [a]  [test.text]

●   

●   

●  sec 1 基础语法

●  DOS命令

●  编译二进制的exe文件:go build

●  直接编译运行(不产生exe文件):go run

●  输入输出

●  import "fmt" // fmt包

●  fmt.Println(xx, xx)

●  循环

●  只有for xx; xx; xx { }

●  判断结构——switch

●  可以switch后面不写变量,case里面写条件来代替if else嵌套,更清晰;每个case运行完之后自动跳出switch.

●  数据结构

●  定义变量

●  var [name] = [value] 或 a := 5

●  数组

●  var a [5]int

●  切片slice:可变长度的数组

●  解释:对数组这样的连续结构的引用(切片),是数组的一个片段

●  赋值

●  slice1 := make([]type, len) //关键词 make

●  append()附加

●  copy(a, b) 把b复制到a中

●  切片取出

●  len()和cap()函数,cap计算切片最长可以达到多少

●  映射 map

●  key-value对,kv对

●  eg. 学号——姓名

●  通过key获得value

●  m := make(map[key类型]value类型)

●  m := make(map[string]int)

●  key通常为int,string类型,value通常为数字,string,map,结构体类型

●   

●   

●  范围Range

●  range关键字用于for循环中迭代数组(array)、切片(slice)、通道(channel)或集合(map)的元素。在数组和切片中它返回元素的索引和索引对应的值,在集合中返回 key-value 对。

●  以map举例,可以取出全部的key-value对以供使用。

●  for key, value := range oldMap {}

●  只取key:

●  for key := range oldMap {}

●  只取value:

●  for _, value := range oldMap {}

●  指针

●  eg.

●  什么时候用:

●  在函数之间传递大型数据结构——传内存地址,优化性能

●  修改原始变量的值

●  动态分配内存 new()函数

●   结构体

●  用到type和struct关键字

●  结构体指针

●  var book *Books

●  结构体指针可以访问结构体成员变量,如book.title

●  访问等级

●  结构体方法

●   

●   

●  Runoob笔记

●  基础语法

●  用 := 赋值

●  声明了局部变量(在函数体内)后必须使用,不然会得到编译错误,但是全局变量可以只声明不使用

●  函数

●   

●  数组

●