![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
golang
up1292
从事软件测试十多年,一直浑浑噩噩的,总想提高技术,学习的东西很多很杂,但都不深入。感叹自己水平有限能力一般,勉强在这行混饭吃。记录下自己的学习过程,主要是给自己看的,所以写的很乱,如果能给阅读者一丝丝帮助,那也是您自己的努力。
展开
-
go语言学习14:指针
package mainimport "fmt"func main() { /* 指针:pointer 存储了另一个变量的内存地址的变量。 */ //1.定义一个int类型的变量 a := 10 fmt.Println("a的数值是:",a) //10 fmt.Printf("%T\n",a) //int fmt.Printf("a的地址是:%p\n",&a) //2.创建一个指针变量,用于存储变量a的地址 var p1 *int fmt.Println(p.原创 2022-04-09 13:58:07 · 202 阅读 · 1 评论 -
go语言学习13:defer
package mainimport "fmt"func main() { /* defer的词义:“延迟”,“推迟” 在go语言中,使用defer关键字来延迟一个函数或者方法的执行。 1.defer函数或方法:一个函数或方法的执行被延迟了。 2.defer的用法: A:对象.close(),临时文件的删除。。。 文件.open() defer close() 读或写 B:go语言中关于异常的处理,使用panic()和recover() panic函.原创 2022-04-09 13:29:35 · 135 阅读 · 0 评论 -
go语言学习12:Map的使用
package mainimport "fmt"func main() { /* map: 映射,是一种专门用于存储键值对的集合,属于引用类型 存储特点: A:存储的是无序的键值对 B:键不能重复,并且和value值一一对应的。 map中的key不能重复,如果重复,那么新的value会覆盖原来的,程序不会报错。 语法结构: 1.创建map var map1 map[key类型]value类型 nil map,无法直接使用 var map2 = m.原创 2022-04-04 13:53:00 · 676 阅读 · 0 评论 -
Go语言学习11:切片Slice
package mainimport "fmt"func main() { /* 数组array: 存储一组相同数据类型的数据结构。 特点:定长 切片slice: 同数组类似,也叫做变长数组或者动态数组。 特点:变长 是一个引用类型的容器,指向了一个底层数组。 make() func make(t Type, size ...IntegerType) Type 第一个参数:类型 slice, map, chan 第二.原创 2022-03-30 19:58:28 · 398 阅读 · 0 评论 -
Go语言学习10:数组
package mainimport "fmt"func main(){ /* 数据类型: 基本类型:整数,浮点,布尔,字符串 复合类型:array, slice, map, struct, pointer, function, channel... 数组: 1.概念:存储一组相同数据类型的数据结构 理解为容器,存储一组数据 .原创 2022-03-26 16:54:48 · 457 阅读 · 0 评论 -
Go语言学习9:生成随机数
package mainimport ( "math/rand" "fmt" "time")func main() { /* 生成随机数random */ num1 := rand.Int() fmt.Println(num1) for i:=0;i<10;i++{ num := rand.Intn(10) //生成0-9之间的随机数 fmt.Println(num) ra.原创 2022-03-25 20:18:58 · 1577 阅读 · 0 评论 -
Go语言学习8:goto语句
package mainimport "fmt"func main(){ /* goto语句: */ var a = 10 LOOP: for a < 20 { if a == 15{ a += 1 goto LOOP } fmt.Printf("a的值为:%d\n", a) a++ }}a的值为:10a的值为:1.原创 2022-03-25 20:05:16 · 455 阅读 · 0 评论 -
Go语言学习7:键盘输入
package mainimport ( "bufio" "fmt" "os")func main() { /* 输入: Scanln() Scanf() bufio包 */ //var x int //var y float64 //fmt.Println("请输入一个整数,一个浮点类型:") //fmt.Scanln(&x,&y) //读取键盘的输入,通过操作地址,赋值给x和y 阻塞式 //fmt.Printf("x的数值:%d.原创 2020-10-08 09:20:49 · 1000 阅读 · 0 评论 -
Go语言学习6:iota关键字
package mainimport "fmt"func main() { /* iota:特殊的常量,可以被编译器自动修改的常量 每当定义一个const,iota的初始值为0 直到下一个const出现,清零 */ const ( a = iota //0 b = iota //1 c = iota //2 ) fmt.Println(a) fmt.Println(b) fmt.Println(c) const ( d = iota //0 e.原创 2020-10-07 14:28:46 · 101 阅读 · 0 评论 -
Go语言学习5:常量的使用
package mainimport "fmt"func main() { /* 常量: 1.概念:同变量类似,程序执行过程中数值不能改变 2.语法: 显示类型定义 隐式类型定义 3.常熟: 固定的数值:100, "abc" */ fmt.Println(100) fmt.Println("hello") //1.定义常量 const PATH string = "http://www.baidu.com" const PI = 3.14 fm.原创 2020-10-07 14:10:54 · 192 阅读 · 0 评论 -
Go语言学习4:变量的概念和使用
package mainimport "fmt"func main() { /* 变量: variable 概念: 一小块内存,用于存储数据,在程序运行过程中数值可以改变 使用: step1: 变量的声明,也叫定义 step2: 变量的访问,赋值和取值 go的特性: 静态语言:强类型语言 go, java, c++, C# ... 动态语言: 弱类型语言 JavaScript, php, python, ruby... */ //第一种: 定义变量,.原创 2020-10-07 10:09:48 · 130 阅读 · 0 评论 -
Go语言学习3:如何安装Goland
工欲善其事必先利其器,命令行工具虽然能够满足我们一些基本操作的需求,但实际工作中怎么能没有一款趁手的开发工具呢?学习Go语言同样如此,一个强大的集成开发环境(IDE)能够大大提高我们的开发效率,目前市面上比较流行的有下面这几种:GoLand:由 JetBrains 公司开发的一个新的商业 IDE; LiteIDE X:一款简单、开源、跨平台的Go语言 IDE; 第三方插件:Sublime Text、VS Code 等编辑器都有Go语言的相关插件。本节我们主要介绍 Windows 系统上 Gol原创 2020-10-07 13:33:45 · 443 阅读 · 0 评论 -
Go语言学习2:第一个程序HelloWorld
配置好工作目录后,就可以编码开发了,在这之前,我们看下go的通用项目结构,这里的结构主要是源代码相应地资源文件存放目录结构。1gopath目录gopath目录就是我们存储我们所编写源代码的目录。该目录下往往要有3个子目录:src,bin,pkg。src ---- 里面每一个子目录,就是一个包。包内是Go的源码文件pkg ---- 编译后生成的,包的目标文件bin ----...原创 2020-04-03 16:52:18 · 226 阅读 · 0 评论 -
Go语言学习1:Go语言环境搭建
下载Mac OS双击启动安装。按照提示,这应该在/usr/local/go中安装了Golang,并且还会将文件夹/usr/local/go/bin添加到您的PATH环境变量中。Windows双击启动安装并遵循提示。这将在位置c中安装Golang:\Go,并且还将添加目录c:\Go\bin到您的path环境变量。Linux下载tar文件,并将其解压到/usr/loc...原创 2020-03-05 17:40:09 · 598 阅读 · 0 评论