
go
求兵
这个作者很懒,什么都没留下…
展开
-
cobra 开启自动补全功能
cobra 开启自动补全功能因工作原因,需要将一个由 cobra 写的命令行工具,支持在 bash 和 zsh 环境开启命令行自动补全功能。网上搜了一圈,大部分都是把 cobra github 的介绍翻译一下就完了。而且没有对命令行补全的功能进行讲解。所以就写一篇文章补充一下。cobra 基础:不单独介绍,网络很多的,也可以参考 Golang之使用Cobra前提初始化 cobra 项目:mkdir sulenn-cobra && cobra init --pkg-name原创 2020-07-05 18:49:41 · 2902 阅读 · 0 评论 -
设计模式 - 简单工厂 - go语言实现
定义:在创建一个对象时不向客户暴露内部细节,并提供一个创建对象的通用接口。类图:简单工厂把实例化的操作单独放到一个类中,这个类就成为简单工厂类,让简单工厂类来决定应该用哪个具体子类来实例化。这样做能把客户类和具体子类的实现解耦,客户类不再需要知道有哪些子类以及应当实例化哪个子类。客户类往往有多个,如果不使用简单工厂,那么所有的客户类都要知道所有子类的细节。而且一旦子类发生改变,例如增加子类,那...原创 2020-03-31 18:17:01 · 352 阅读 · 0 评论 -
go语言反转字符串
今天做笔试题。有一道coding是反转字符串。以为是送分题,但是用go语言只ac了80%,于是记录一下。题目:反转一个给定的字符串并输出错误coding(只考虑了8位的编码形式,如中文的字符串输入就没有考虑):package main/** * 反转字符串,输入Douyu,输出uyuoD * @param str string字符串 任意字符串 * @return string字符...原创 2020-03-22 17:53:10 · 1534 阅读 · 1 评论 -
牛客网做算法题时go语言读取标准输入的方法
最近由于面试需要使用牛客网的 OJ 系统,感觉特别不习惯。之前都是在 leetcode 上做算法题,所以对需要自己处理输入输出的方式特别不熟悉,捣鼓了好一小会。这里做一个小记录,也是一个分享吧。算法题demo:a+b每行包含两个整数a和b对于每行输入对应输出一行a和b的和输入1 5输出6方法一:使用fmt.Scan按空格读取fmt.Scan 只识别空格,同时会将换行判...原创 2020-03-15 20:54:51 · 3882 阅读 · 1 评论 -
记录 go 协程和 channel 中有意思的一个问题
首先观察以下代码,判断输出内容或是否报错:package mainimport "fmt"func main() { var ch chan int var count int go func() { ch <- 1 }() go func() { count++ close(ch) }() <-ch fmt.Println(count)}该...原创 2020-03-08 09:46:23 · 243 阅读 · 0 评论 -
go语言去除字符串尾部所有空格
刷 leetcode 的一个算法题。https://leetcode-cn.com/contest/weekly-contest-172/problems/print-words-vertically/. 要求只删除字符串尾部的所有字符串. google 只搜出通过 strings.Trim() 方法删除前后空格或者删除字符串前边和后边的固定子字符串。方法,从字符串后端开始计算空格数量,然后用切...原创 2020-01-26 10:07:47 · 4043 阅读 · 0 评论 -
testfixtures 简介
写测试用例的, github 地址: go-testfixtures/testfixtures用于 go 语言开发 web 网站, 针对 SQL 数据库编写轻松的测试用例思想源于 “Ruby on Rails”, 示例数据保存在 Fixture 文件夹中. 在执行测试之前,先清理测试数据库,同时将示例数据加载到数据库中.该方法针对真实的数据库运行测试,而不是只依赖于模拟. 因为模拟的方式可能...原创 2020-01-17 10:44:06 · 1190 阅读 · 0 评论 -
goland中"import "core" is a program, not an importable package"问题的解决方法
问题出现原因:从github上clone的代码,本来所有go文件都在一个文件夹中,这里把go文件分成了coin和core两个文件夹。coin和core文件目录中go文件设置了同样的packege main,导致报错解决方法:把core文件目录下所有的go文件中"package main"改成" package core"即可参考:https://studygolang.com/articles...原创 2018-11-24 18:59:59 · 10796 阅读 · 1 评论 -
goland中"cannot find package "core" in any of"问题的解决方法
问题: 解决方法:file-&gt;settings-&gt;Go-&gt;GOPATH-&gt;PROJECT GOPATH中添加当前项目工程的路径原创 2018-11-24 19:19:45 · 16708 阅读 · 1 评论