Go
文章平均质量分 82
风的着点
这个作者很懒,什么都没留下…
展开
-
the-way-to-go(六)
错误处理与测试通常(错误信息)都会有像 “Error:” 这样的前缀,所以你的错误信息不要以大写字母开头错误类型以 “Error” 结尾,错误变量以 “err” 或 “Err” 开头不能随意地用 panic 中止程序,必须尽力补救错误让程序能继续执行recover 只能在 defer 修饰的函数中使用:用于取得 panic 调用中传递过来的错误值,如果是正常执行,调用 recover 会返回 nil,且没有其它效果panic 会导致栈被展开直到 defer 修饰的 recover () 被调用或者原创 2021-12-15 16:57:47 · 107 阅读 · 0 评论 -
the-way-to-go(五)
包(Package)精密计算和 big 包整数的高精度计算 Go 语言中提供了 big 包其中包含了 math 包:有用来表示大整数的 big.Int 和表示大有理数的 big.Rat 类型(可以表示为 2/5 或 3.1416 这样的分数,而不是无理数或 π)这些类型可以实现任意位类型的数字,只要内存足够大。缺点是更大的内存和处理开销使它们使用起来要比内置的数字类型慢很多大的整型数字通过 big.NewInt(n) 来构造大有理数通过 big.NewRat(N,D) 方法构造所有大数字类型都原创 2021-12-15 14:54:37 · 375 阅读 · 0 评论 -
the-way-to-go(四)
数组 & 切片数组具有相同 唯一类型 的一组以编号且长度固定的数据项序列可以是任意的原始类型例如整型、字符串或者自定义类型长度必须是一个常量表达式,并且必须是一个非负整数数组长度也是数组类型的一部分数组长度最大为 2Gb把一个大数组传递给函数会消耗很多内存。有两种方法可以避免这种现象:传递数组的指针使用数组的切片数组是值类型切片切片是一个 长度可变的数组对于 切片 s 来说不等式0 <= len(s) <= cap(s)永远成立多个切片如果表示同一个数组的原创 2021-12-14 13:57:10 · 104 阅读 · 0 评论 -
the-way-to-go(三)
函数(function)函数是基本的代码块函数编写的顺序无关紧要;鉴于可读性的需求,最好把 main() 函数写在文件的前面DRY 原则:不要重复你自己(Don’t Repeat Yourself)三种类型:普通的带有名字的函数匿名函数或者 lambda 函数方法(Methods)除了 main ()、init () 函数外,其它所有类型的函数都可以有参数与返回值函数签名:函数参数、返回值以及它们的类型Go 语言不支持函数重载函数也可以以申明的方式被使用,作为一个函数类型type原创 2021-12-09 16:13:50 · 609 阅读 · 0 评论 -
Go(geekr.dev)学习三
运算符算术运算符含+、-、*、/、%、++、--%(取余运算只能用于整数)不同类型的整型值不能直接进行算术运算,必需先转化相同类型再执行计算自增/自减运算符,只能作为语句,不能作为表达式,且只能用作后缀,不能放到变量前面func method() { a := 10 b := 20 var c int c = a + b c = a - b c = a * b c = a / b c = a % b // 等效于:a=a+1 a++ /原创 2021-12-07 16:26:28 · 347 阅读 · 0 评论 -
Go(geekr.dev)学习二
面向对象由一系列具有相同类型或不同类型的数据构成的数据集合(类似Java中的类)没有 class、extends、implements 之类的关键字和相应的概念,借助结构体实现类的声明不支持构造函数、析构函数,通过定义NewXXX这样的全局函数作为类的初始化函数指针方法与值方法(Go 语言不支持隐藏的 this 指针,所有的东西都是显式声明)toString实现:方法名固定为String;手动实现;无需显示调用使用点号 (.) 操作符访问结构体成员,格式为:“结构体.成员原创 2021-12-07 16:25:36 · 674 阅读 · 0 评论 -
Go(geekr.dev)学习一
数据类型数字类型类型描述int8/int16/int32/int64有符号整数uint8/uint16/uint32/uint64无符号整数float32/float64IEEE-754 32/64位浮点型数;与Java的对应:float32 => float;float64 => double自动类型推导为 float64开发中建议尽量使用 float64,因为 math 包下面的计算都是用此类型byte类似uint8rune类似 in原创 2021-12-07 16:22:11 · 652 阅读 · 0 评论 -
Go安装及Goland配置
Windows安装环境变量GOPATH:需要加到path中,用来执行go相关指令的(安装目录)【fixme】GOROOT:存储所有项目的第三方依赖目录(可自定义)【fixme】代理配置源一 开源全球代理https://goproxy.io源二 七牛云(仅国内访问)https://goproxy.cn源三 阿里云https://mirrors.aliyun.com/goproxy/源四 Goproxy 中国https://golang.com.cn/proxyGoland配置原创 2021-12-02 10:32:03 · 620 阅读 · 0 评论 -
the-way-to-go(二)
数组// 声明var variable_name [SIZE] variable_type// 初始化// SIZE可以不写(括号必需保留),会自动根据值的个数进行推到并设置var variable_name = [SIZE]variable_type{val_1,val_2,...,val_SIZE}var variable_name = []variable_type{val_1,val_2,...,val_SIZE}// 访问略// 示例var balance [10] float原创 2021-11-04 15:50:40 · 133 阅读 · 0 评论 -
the-way-to-go(一)
变量init函数在main函数之前执行func init() { fmt.Println("This is init function")}func main() { fmt.Println("This is main function")}// 输出内容// This is init function// This is main function标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,那使用这种标识符的对象就可以被外部包的代原创 2021-11-02 14:34:19 · 164 阅读 · 0 评论