![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Golang
文章平均质量分 84
CV大使
这个作者很懒,什么都没留下…
展开
-
为什么 nil != nil? Go “==“ 机制详解
这篇文章源于代码中关于 nil 判断的一个问题,我将从这里例子开始慢慢讲解。先从一段代码看起,下面这个代码是将传入的对象转换成 JSON string并返回回去,其中,如果判断 i==nil 时,会返回""。func ToJSONString(i interface{}) string { if i == nil { return "" } bytes, _ := json.Marshal(i) return string(bytes)}这段代码初看并没有太.原创 2021-07-30 12:35:36 · 599 阅读 · 0 评论 -
10分钟上手 Go 函数式编程
先来说一个简单的例子,加减乘除。var add = func(a, b int) int { return a + b }var multiply = func(a, b int) int { return a * b }var result = multiply(add(1, 2), add(3, 4))这是一个简单的函数,用一个数学上的例子是为了后续将其更改为函数式的写法,目前来看,这个函数还简单的很,后续我会使用函数式的方式改写它。考虑到Go对函数式支持的并不是非常好,且由于确实泛型,所以容原创 2021-07-29 21:04:53 · 812 阅读 · 0 评论 -
【Go】高效截取字符串
本文作者: 戚银(thinkeridea)本文链接: https://blog.thinkeridea.com/201910/go/efficient_string_truncation.html版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处!最近我在 Go Forum 中发现了 [SOLVED] String size of 20 character 的问题,“hollowaykeanho” 给出了相关的答案,而我从中发现了截取字符串的方案.转载 2021-04-07 16:56:39 · 6090 阅读 · 0 评论 -
Golang 并发编程实战——协程、管道、select用法
在阅读本文前,我希望你有一定的Go语言基础,以及一部分关于协程的使用经验。本文旨在帮助你使用高级并发技巧,其主要包含了以下几个部分:goroutine的基本用法;使用chan来实现多个goroutine之间的通信;使用select关键字来处理超时等。文章目录一个简单的例子Go 管道的用法一个简单的使用方法如下【知识点】Chan的概念【案例讲解】两个线程输出数据通过两个管道实现合并管道协程间通信【案例讲解】设定超时等待时间一个简单实现【知识点】select 解析【实战】模拟Google搜索服务Google原创 2021-03-20 15:11:41 · 473 阅读 · 0 评论