![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
GO
dmt_csr
前端菜鸟
展开
-
GO学习第一天(基本语法)
1.读文件 const filename = "./learn/abc.txt" if value, err := ioutil.ReadFile(filename); err != nil { fmt.Println(err) } else { fmt.Printf("%s\n", value) } 2.switch func grade(score int) string {...原创 2019-05-24 13:44:11 · 148 阅读 · 0 评论 -
GO学习第九天(defer)
defer 确保在函数结束时发生 参数在defer语句计算 defer先进后出 func writeFib(fileName string) { file, err := os.Create(fileName) if err != nil { panic(err) } defer file.Close() wartier := bufio.NewWriter(file) de...原创 2019-06-03 13:01:35 · 88 阅读 · 0 评论 -
GO学习第10天(出错处理)
defer + panic + recover package main import ( "./fileList" "github.com/gpmgo/gopm/modules/log" "net/http" "os" ) type appHaber func(writer http.ResponseWriter, request *http.Request) error fun...原创 2019-06-08 13:40:57 · 238 阅读 · 0 评论 -
GO学习第六天(面对对象、包)
包 为结构定义的方法必须放在包内 可以是不同文件 组合 type myNode struct { node *tree.Node } func (node *myNode) after() { if node == nil || node.node == nil { return } left := myNode{node.node.Left} right := myNode{...原创 2019-05-29 17:41:13 · 70 阅读 · 0 评论 -
GO学习第八天(函数闭包)
函数实现接口 package main import ( "bufio" "fmt" "io" "strings" ) func fibonacci() intGen { a, b := 0, 1 return func() int { a, b = b, a+b return a } } type intGen func() int func (g intGen) ...原创 2019-06-01 18:59:32 · 90 阅读 · 0 评论 -
LeetCode - 3无重复字符的最长子串
题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。 示例 3: 输入: “pwwkew” 输出: 3 解释: 因为无重复字符的最长子串是 “wke...原创 2019-05-28 23:53:57 · 80 阅读 · 0 评论 -
LeetCode -1两数之和
题目 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] func two...原创 2019-05-28 23:51:42 · 84 阅读 · 0 评论 -
GO学习第五天(结构体)
结构体创建 type treeNode struct { value int left, right *treeNode } func main() { var tree treeNode fmt.Println(tree) tree = treeNode{5, nil, nil} tree.left = &treeNode{} tree.right = &...原创 2019-05-28 23:49:47 · 103 阅读 · 0 评论 -
GO学习第七天(duck typing、接口组合)
duck typing 是不是真正的鸭子 接口组合 type Retriever interface { Get(url string) string } type Poster interface { Post(url string, form map[string]string) string } type session interface { Poster Retrie...原创 2019-05-30 21:17:31 · 119 阅读 · 0 评论 -
GO学习第四天(切片操作、map、rune)
切片的append操作 arr := [...]int{0, 1, 2, 3, 4, 5, 6} s1 := arr[2:5] s3 := append(s1, 10) s4 := append(s3, 20) // 超过arr的cap 系统会重新分配更大数组 // s5 no longer view arr s5 := append(s4, 30) fmt.Println("s3...原创 2019-05-27 22:47:51 · 452 阅读 · 0 评论 -
GO学习第三天(切片)
指针 func swap(a, b *int) { *a, *b = *b, *a } 函数只有值传递,没有引用 交换值 func main() { a, b := 3, 4 a, b = swap(a, b) fmt.Println(a, b) } func swap(a, b int) (int,int){ return b,a } 数组定义 func main() { va...原创 2019-05-26 23:33:55 · 88 阅读 · 0 评论 -
GO学习第二天(数组)
数字转字符串 strconv.Itoa(n%2) 一行行读文件 func printFile () { file, err := os.Open("./learn/abc.txt") if err!=nil { panic(err) } scanner := bufio.NewScanner(file) for scanner.Scan() { fmt.Println(sca...原创 2019-05-26 00:17:24 · 83 阅读 · 0 评论 -
iris框架(GO)
package main import ( "github.com/kataras/iris" ) func main() { app := iris.New() app.RegisterView(iris.HTML("./views", ".html")) // Method: GET // Resource: http://localhost:8080 app.Handl...转载 2019-06-09 13:18:33 · 712 阅读 · 0 评论