
Go
amy260231120
后端程序媛
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Go 错误处理与测试 defer-panic-recover
Go 是怎么处理普通错误的呢?通过在函数和方法中返回错误对象作为它们的唯一或最后一个返回值——如果返回 nil,则没有错误发生——并且主调(calling)函数总是应该检查收到的错误。错误处理错误接口类型type error interface { Error() string}定义错误err := errors.New("需要显示的信息")用 fmt 创建错误对象fmt.Errorf("math: square root of negative number %g", f)原创 2020-05-12 18:00:35 · 357 阅读 · 0 评论 -
Go 网路编程
tcpservice.go// Simple multi-thread/multi-core TCP server.package mainimport ( "flag" "fmt" "net" "syscall")const maxRead = 25func main() { flag.Parse() if flag.NArg() != 2 { panic("usage: host port") } hostAndPort := fmt.Sprintf("%s:%s原创 2020-05-09 18:25:09 · 211 阅读 · 0 评论 -
Go 读写数据
读取控制台输入1. fmt包:Scan 和 Sscan 开头的函数var ( firstName, lastName, s string i int f float32 input = "56.12 / 5212 / Go" format = "%f / %d / %s")func main() { fmt.Println("Please enter y...原创 2020-05-09 10:32:07 · 440 阅读 · 0 评论 -
Go 协程(goroutine)与通道(channel)
协程package mainimport "time"func main() { go say("Hello World") // 没有下一行,则主线程都结束了协程还没打印完说不定 time.Sleep(time.Second * 1)}func say(s string) { println(s)}2.WaitGrouppackage mainimport ...原创 2020-05-08 19:51:45 · 551 阅读 · 0 评论 -
Go 接口(Interfaces)与反射(reflection)
多态Go里的接口类似C++多态相同接口的变量在不同的时刻表现出不同的行为type Namer interface { Method1(param_list) return_type Method2(param_list) return_type ...}实现接口时:指针变量值变量接收者是*T 类型的方法OKERROR 存储在接口里的值没...原创 2020-04-27 15:00:48 · 329 阅读 · 0 评论 -
Go 包 package
archive/tar 和 /zip-compress:压缩(解压缩)文件功能。fmt-io-bufio-path/filepath-flag: fmt: 提供了格式化输入输出功能。 io: 提供了基本输入输出功能,大多数是围绕系统功能的封装。 bufio: 缓冲输入输出功能的封装。 path/filepath: 用来操作在当前系统中的目标文件名路径。 flag: 对命令行参数的操作...原创 2020-04-17 16:58:09 · 222 阅读 · 0 评论 -
Go 控制结构 if-else switch select for (range) 结构
if-elseif condition1 { // do something } else if condition2 { // do something else } else { // catch-all or default}if initialization; condition { // do something}测试多返回值函数的错误习惯用法// 1.er...原创 2020-04-16 13:52:52 · 364 阅读 · 0 评论 -
Go 方法(即 成员函数)
声明package mainimport ( "fmt" "math")type Point struct { X, Y float64}// 普通函数func Distance(p, q Point) float64 { return math.Hypot(q.X-p.X, q.Y-p.Y)}// Point类的成员函数(方法)// p 相当于 this// D...原创 2020-04-14 16:28:55 · 3707 阅读 · 0 评论 -
Go 函数
声明func name(parameter-list) (result-list) { body}4种方法声明拥有2个int型参数和1个int型返回值的函数func add(x int, y int) int {return x + y}func sub(x, y int) (z int) { z = x - y; return}func first(x int, _...原创 2020-04-13 16:51:24 · 322 阅读 · 0 评论 -
Go struct
package mainimport ( "fmt")// 一、结构体声明// 成员变量必须是大驼峰,不然外部无法访问type Employee struct { ID int // 0 -> 2 Name string // "" Address string // "" Position string // "...原创 2020-04-09 15:23:17 · 195 阅读 · 0 评论 -
Go 字符串string,字符rune,字节byte,数字之间的转换
数字—》string由strconv包提供这类转换功能。将一个整数转为字符串,一种方法是用fmt.Sprintf返回一个格式化的字符串;另一个方法是用strconv.Itoa(“整数到ASCII”):x := 123y := fmt.Sprintf("%d", x)fmt.Println(y, strconv.Itoa(x)) // "123 123"FormatInt和Format...原创 2020-04-09 14:43:57 · 4637 阅读 · 0 评论 -
Golang 基本数据类型,常量,数组,切片,字符串
整数int8、int16、int32、int64uint8、uint16、uint32、uint64int、uint (不同的编译器即使在相同的硬件平台上可能产生不同的大小)uintptr 无符号的整数类型。指针大小优先级递减* / % << >> & &^+ - ...原创 2020-04-08 15:21:38 · 3194 阅读 · 0 评论 -
Golang 程序结构
2.1 命名25个关键字break default func interface selectcase defer go map structchan else goto package switchconst fallthrough if...原创 2020-04-06 16:01:20 · 249 阅读 · 0 评论 -
Golang 入门
编译过程go buildgo run变量使用声明但不初始化时,默认为默认值(int为0)var i int原创 2020-04-06 13:07:02 · 382 阅读 · 0 评论