Golang学习
文章平均质量分 77
Lay_XZ
这个作者很懒,什么都没留下…
展开
-
Go学习(九):并发编程2
select关键字,可以同时响应多个通道的操作。原创 2023-11-03 13:52:10 · 279 阅读 · 1 评论 -
Go学习(八):并发编程1
本质上是生产者消费者模型可以有效控制goroutine数量,防止暴涨例题:(还是有点不太明白为什么会deadlock)计算一个数字的各个位数之和,例如数字123,结果为1+2+3=6随机生成数字进行计算import ("fmt""sync"Id int//这里必须传对象实例??job *Jobsum int// 使用等待组来等待所有协程完成// 创建工作池// 参数1:开几个协程for i := 0;i < num;i++ {wg.Add(1)//获取job管道的数据。原创 2023-11-01 22:11:10 · 349 阅读 · 1 评论 -
Go学习(七):方法、面向对象
/ 系统抛a[1] = 123// 自己抛panic("半径不能为负")//// 延时执行匿名函数// 延时到何时?(1)程序正常结束 (2)发生异常时 //发生异常时// recover() 复活 恢复// 会返回程序为什么挂了err!= nil {}()fmt.Println("这里有没有执行") //没执行test03()test04()半径不能为负test04import ("fmt""os""time"op stringif err!= nil {原创 2023-10-28 10:40:24 · 30 阅读 · 1 评论 -
Go学习(六):函数
• 无需声明原型。• 支持不定 变参。• 支持多返回值。• 支持命名返回参数。• 支持匿名函数和闭包。• 函数也是一种类型,一个函数可以赋值给变量。• 不支持 嵌套 (nested) 一个包不能有两个名字一样的函数。• 不支持 重载 (overload)• 不支持 默认参数 (default parameter)。函数是第一类对象,可作为参数传递。建议将复杂签名定义为函数类型,以便于阅读??(我感觉好难看懂)// 定义函数类型。// 没有函数体的函数声明,这表示该函数不是以Go实现的。原创 2023-10-27 11:29:23 · 100 阅读 · 1 评论 -
Go学习(五):流程控制
for 循环的 range 格式可以对 slice、map、数组、字符串等进行迭代循环。for range可以完成所有for可以做的事情,却能做到for不能做的,包括。map、channel 是指针包装,而不像 slice 是 struct。1、遍历key为string类型的map并同时获取key和value。Go语言的For循环有3中形式,只有其中的一种使用分号。for 和 for range的区别。range 会复制对象,值拷贝。2、遍历channel。原创 2023-10-26 16:32:35 · 22 阅读 · 0 评论 -
Go学习(四):golang连接mysql数据库查询数据库信息
【代码】Go学习(四):golang连接mysql数据库查询数据库信息。原创 2023-10-25 22:35:51 · 2195 阅读 · 1 评论 -
Go学习(三):Map、结构体
KeyType:表示键的类型。ValueType:表示键对应的值的类型。自定义类型类型别名。原创 2023-10-25 16:32:40 · 204 阅读 · 1 评论 -
Go学习(二):切片Slice、指针
会报错,没有分配内存空间。要分配内存,就引出来今天的new和make。使用make进行初始化,然后才可以对它们进行操作。原创 2023-10-25 13:41:12 · 202 阅读 · 1 评论 -
Go语言学习(一):变量常量、基本类型、数组
对于不同的package,如果不相互依赖的话,按照main包中"先import的后调用"的顺序调用其包中的init(),如果package存在依赖,则先调用最早被依赖的package中的init(),最后调用main函数。是go语言的常量计数器,只能在常量的表达式中使用。2. 数组定义:var a [len]int,比如:var a [5]int,数组长度必须是常量,且是类型的组成部分。3. 长度是数组类型的一部分,因此,var a[5] int和var a[10]int是不同的类型。原创 2023-10-24 22:22:15 · 201 阅读 · 0 评论