![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
go
石渊友
这个作者很懒,什么都没留下…
展开
-
【golog】我的go学与思12
接口看一个例子package mainimport ( "fmt" "math")type Abser interface { Abs() float64}func main() { var a Abser f := MyFloat(-math.Sqrt2) v := Vertex{3, 4} a = f // a MyFloat 实现了 Abser a =...原创 2020-05-02 16:10:32 · 214 阅读 · 0 评论 -
【golog】我的go学与思11
方法和接口正文go 没有类,但是能定义结构的成员函数:package mainimport ( "fmt" "math")type Vertex struct { X, Y float64}func (v Vertex) Abs() float64 { return math.Sqrt(v.X*v.X + v.Y*v.Y)}func main() { v :=...原创 2020-05-02 16:08:56 · 306 阅读 · 0 评论 -
【golog】我的go学与思10
映射正文对一个结构体进行映射,即结构体是其值,这里定义键的类型为string。package mainimport "fmt"type Vertex struct { Lat, Long float64}var m = map[string]Vertex{ "Bell Labs": Vertex{ 40.68433, -74.39967, }, "Google": ...原创 2020-05-02 16:07:45 · 202 阅读 · 0 评论 -
【golog】我的go学与思9
数组与切片package mainimport "fmt"func main() { var a [2]string a[0] = "Hello" a[1] = "World" fmt.Println(a[0], a[1]) fmt.Println(a) primes := [6]int{2, 3, 5, 7, 11, 13} x := primes[1:4] y :=...原创 2020-05-02 16:06:56 · 164 阅读 · 0 评论 -
【golog】我的go学与思8
结构体package mainimport "fmt"type Vertex struct { X int Y int}func main() { v := Vertex{1, 2} p := &v p.X = 1e9 fmt.Println(v)}//输出{1000000000 2}go语言居然可以直接输出一个结构体,而且结构体指针访问的时候还是用....原创 2020-05-02 16:05:55 · 138 阅读 · 0 评论 -
【golog】我的go学与思7
指针正文package mainimport "fmt"func tmp() *int{ v := 1 return &v}func main() { i, j := 42, 2701 p := &i // point to i fmt.Println(*p) // read i through the pointer *p = 21...原创 2020-05-02 16:05:03 · 134 阅读 · 0 评论 -
【golog】我的go学与思6
其他类型正文类型转化var i int = 42var f float64 = float64(i)var u uint = uint(f)缩写为:i := 42f := float64(i)u := uint(f)反正,go只提供显示类型转化。c++是又隐式类型转化的比如各种类型数字都是往double的方向(不是转化为double)转化的。这样计组的时候我们学过:uint...原创 2020-05-02 16:04:03 · 133 阅读 · 0 评论 -
【golog】我的go学与思5
控制流正文循环sum := 0for i := 0; i < 10; i++ { sum += i}就是没有()包裹。可以,其中init,condition,post statement都可以缺省sum := 1for ; ; { sum += sum}可以写为:sum := 1for sum<1000 { sum += sum}/...原创 2020-05-02 16:03:16 · 130 阅读 · 0 评论 -
【golog】我的go学与思4
方法没想到,go教程会比变量先教方法。语法哲学搞计算机的人说实话比我想象的要更考虑哲学,优雅。当然工程除外,可能优先是易维护等……正文package mainimport "fmt"func add(x int, y int) int { return x + y}func main() { fmt.Println(add(42, 13))}好吧,应该首字母大写是...原创 2020-05-02 16:02:08 · 134 阅读 · 0 评论 -
【golog】我的go学与思2
包正文package mainimport ( "fmt" "math/rand") import "math/cmplx"func main() { fmt.Printf("Now you have %g problems.\n", math.Sqrt(7))}这里这个头部有的这个package main有点像Java一样,这里的主函数入口func main()暂...原创 2020-05-02 15:59:52 · 116 阅读 · 0 评论