应用领域
服务端编程
中间件
网络编程
云计算
区块链开发
分布式系统
基础
变量定义、数组、切片、Map、类型转换、指针、函数、Struct结构体、方法、接口
流程控制、错误处理
序列化和反序列化、文件I/O操作、命令行参数、HTTP
go run xxx //运行
go build xxx //打包
案例:HTTP服务
package main
import (
"fmt"
"net/http"
"encoding/json"
)
func main(){
http.HandleFunc("/applist", getList)
err := http.ListenAndServe(":8081", nil)
if err != nil{
fmt.Println(err)
}
}
func getList(w http.ResponseWriter, r *http.Request){
var a = &Animal{
Name: "cat",
Gender: "Male",
Age: "2",
}
byteA, err := json.Marshal(a)
if err != nil{
fmt.Println(err)
}
if r.URL.Path == "/applist"{
w.Write(byteA)
}else{
w.Write([]byte("路径请求错误"))
}
}
type Animal struct {
Name string
Gender string
Age string
}
案例:创建goroutine
package main
import (
"fmt"
"time"
)
func main() {
go func() {
var times int
for {
times++
fmt.Println("tick", times)
time.Sleep(time.Second)
}
}()
var input string
fmt.Scanln(&input)
}