主题
文章
项目
资源
图书
Go网址导航
下载
官方文档
英文文档
中文文档
标准库中文版
Go指南
注册
登录
首页
会员
tangname的信息
TA的收藏
初级会员
第 39752 位会员
ID:
tangname
名字:
Fat Panda
注册时间:
2019-07-03 11:41:48
是否在线:
Offline
财富:
19
26
更多>>
最近发布的主题
Go源码
go module模式下运行go源码,包的import问题
at
2020-06-01 16:10:35
Go问与答
go源码中,只定义func名称和参数,没有主体。但是我自己写这样的东西编译会报错。
at
2019-08-10 17:02:18
更多>>
最近发布的文章
暂无
更多>>
最近分享的资源
暂无
更多>>
最近发布的项目
暂无
更多>>
最近的评论
2019-11-18 12:35:18
评论了
主题
用 goroutine 写了 3 种,得到的结果都不一样,不知道为什么?
新加一个blockChan,带缓存(数量100) blockChan<-struct{} 写在 FetchProductpage(ch) 调用之前. fetchProductpage 调用完之后 _=<-blockChan取出值 这样就可以限制请求数了.
2019-11-17 22:53:32
评论了
主题
用 goroutine 写了 3 种,得到的结果都不一样,不知道为什么?
第一个没看出什么问题 第二个其实都相当于顺序执行了,goroutine都没啥用。 你这个情况直接加个chan缓存就可以了,同时做多个处理。
2019-11-14 17:34:21
评论了
博文
for...range的坑
for _, v := range sList { fmt.Printf("%p \n", &v) } 这一句你可以理解为,声明一个变量 v 然后每次遍历的时候,将sList中的元素依次拷贝到变量v 所以 &v 指向的都是同一个变量,地址不会变.
2019-09-24 09:11:37
评论了
主题
为什么用指针取得的值是一样的呢?
输出的全是变量v的指针,当然一样了。这个变量在循环一直被赋值,只是值不一样而已。
2019-09-19 20:14:43
评论了
主题
添加元素重新开辟空间与否取决初始化切片的方式,似乎这是bug?大伙速速进来看下!
#4
楼
@anko
主要还是因为方法传递的是对象副本,不像其他语言那样有引用类型可以直接修改值. 调用 append方法后,不仅仅要重新指向pointer,它的len和cap也需要重新更新值.
最新主题
|
最新资源
|
最新评论
niuhe - IDL 生成代码,前端协议, 页面和文档插件
Vite5+Electron聊天室|electron31跨平台仿微信EXE客户端|vue3聊天程序
Tauri2.0-Vue3OS桌面端os平台|tauri2+vite6+arco电脑版OS管理系统
flutter3-dymall仿抖音直播商城|Flutter3.27短视频+直播+聊天App实例
结构体的切片(slice of struct)不等于它实现的接口的切片(slice of interface)?
如何在 Go 中使用管道连接多个命令?
如何在 Go 程序中打包静态资源?
如何在 Go 中使用 C++?
在 Go 中取消阻塞操作
Golang单元测试
cllgeek
3天之前
在
Go每日一题(17)
中评论
打卡
joanswei
5天之前
在
golang 无限级树状结构
中评论
package main import ( //"encoding/json" "encoding/json" "fmt" ) type Datanode struct { Id int `json:"id"` PId int `json:"pid"` Name string `json:"name"` Child []*Datanode `json:"child"` } var Jsondata []byte //存储json数据 func main() { Data := make([]Datanode, 0) //存储所有初始化struct var a Datanode a.Id = 0 a.PId = -1 a.Name = "目录" Data = append(Data, a) a.Id = 1 a.PId = 0 a.Name = "一、水果" Data = append(Data, a) a.Id = 2 a.PId = 1 a.Name = "1.苹果" Data = append(Data, a) a.Id = 3 a.PId = 1 a.Name = "2.香蕉" Data = append(Data, a) a.Id = 4 a.PId = 0 a.Name = "二、蔬菜" Data = append(Data, a) a.Id = 5 a.PId = 4 a.Name = "1.芹菜" Data = append(Data, a) a.Id = 6 a.PId = 4 a.Name = "2.黄瓜" Data = append(Data, a) a.Id = 7 a.PId = 6 a.Name = "(1)黄瓜特点" Data = append(Data, a) a.Id = 8 a.PId = 4 a.Name = "3.西红柿" Data = append(Data, a) a.Id = 9 a.PId = 0 a.Name = "三、关系" Data = append(Data, a) var data []*Datanode data = make([]*Datanode, 0) for i, _ := range Data { var a *Datanode a = &Data[i] data = append(data, a) } node := &Data[4] //父节点 maketree(data, node) //调用生成tree transformjson(node) //转化为json jsontotree(Jsondata) //json 转为struct } func maketree(Data []*Datanode, root *Datanode) { // 创建一个哈希表,用于快速查找子节点 childMap := make(map[int][]*Datanode) for _, node := range Data { childMap[node.PId] = append(childMap[node.PId], node) } // 递归构建树 buildTree(root, childMap) } func buildTree(node *Datanode, childMap map[int][]*Datanode) { // 查找当前节点的子节点 if children, exists := childMap[node.Id]; exists { node.Child = append(node.Child, children...) // 递归处理子节点 for _, child := range children { buildTree(child, childMap) } } } func transformjson(Data *Datanode) { //转为json Jsondata, _ = json.Marshal(Data) fmt.Println(string(Jsondata)) } func jsontotree(jsondata []byte) { //json转struct var a Datanode err := json.Unmarshal(jsondata, &a) fmt.Println("22222222222222", string(jsondata)) if err != nil { fmt.Println(err) } else { fmt.Println(a.Id, a.PId, a.Name) for _, v := range a.Child { fmt.Println(*v) } } } 你这个存在很严重的性能问题,如果有10级,数据量很大,你这个就循环不过来了,如果写在接口里就不满足开发环境了,其实有两种情况优化一个使用mysql8.0以后得无限父级查询,一个是代码优化
LIGUANGYAO
9天之前
在
用go 和 umi 写了一个简易博客+视频播放的玩具~~~持续更新中
中评论
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
LIGUANGYAO
9天之前
在
推荐你认为好的Go资源
中评论
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
LIGUANGYAO
9天之前
在
[UE5]虚幻引擎UEC++从基础到进阶
中评论
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
LIGUANGYAO
9天之前
在
GfastShop商城系统
中评论
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
LIGUANGYAO
9天之前
在
Cesium可视化系统实战教程
中评论
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
LIGUANGYAO
9天之前
在
React UI组件库教程
中评论
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
LIGUANGYAO
9天之前
在
Golang/React 全栈开源音视频项目,实战 GB/T28181-2022 协议
中评论
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
LIGUANGYAO
9天之前
在
SpringBoot 3.x + Netty + MQTT 实战物联网智能充电桩
中评论
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
X
登录和大家一起探讨吧
用户名
密码
记住登录状态
登录
GitHub 登录
忘记密码?
还不是会员
现在注册
最近的评论