Hello!我是饭团呀~接着上一篇的《Go的学习笔记-HelloWorld》,这次来点Go的基本类型和方法,比较简单,基础比较好的略过~哈哈哈,如果有问题请留言或后台留言~
一、基本类型
类型 | 说明 | 注意事项 | |
布尔型 | true或false | ||
整数 | uint8 | 无符号8位整型(0-255) tips:2的八次方 | 1.无法直接与字符串相加从而达到字符串拼接效果。 转字符串类型方式: var b uint8 = 64 // 方式一 bstr1 := strconv.Itoa(int(b)) // 错误方式,这里的bstr2是A bstr2 := string(b) 2. 小数字转大范围 正常强转 var b uint8 = 65 var c uint16 = uint16(b) 3. 大数字转小范围 对数字向小范围数字的总数求余,下面的e是0 var d uint16 = 256 var e uint8 = uint8(d) |
uint16 | 0 -> 65,535 | ||
uint32 | 0 -> 4,294,967,295 | ||
uint64 | 0- >18,446,744,073,709,551,615 | ||
int8 | 0 -> 255 | ||
int16 | 0 -> 65,535 | ||
int32 | 0 -> 4,294,967,295 | ||
int64 | 0 -> 18,446,744,073,709,551,615 | ||
浮点数 | float32 | +- 1e-45 -> +- 3.4 * 1e38 | 1. 精度缺失 var k float64 = 10.00000000002 // 这里是100000000000.199997 var l float64 = k * 1e10 2. 货币用float吗? 不建议使用,git上有github.com/shopspring/decimal可以处理精确的大小数计算 |
float64 | +- 5 1e-324 -> 107 1e308 | ||
复数 | complex64 | 32位实数和虚数 | var c2 complex64 c2 = 2 + 3i var c3 complex128 c3 = 3 + 4i // (2+3i) fmt.Println(c2) // (3+4i) fmt.Println(c3) |
complex128 | 64 位实数和虚数 | ||
字符串 | string | 1.双引号(" "),会识别转义字符 2.反引号,不会识别转义字符。以字符串的原生形式输出,包括换行和特殊字符。 | |
字符 | byte | 等同于int8,常用来处理ascii字符 | |
rune | 等同于int32,常用来处理unicode或utf-8字符 |
二、方法
func function_name( [parameter list] ) [return_types] {}
1. 在定义方法的时候可以多值返回
2. 定义的返回值可以先,返回值可以先定义好变量,结束直接return可看代码2.定义方法
package main
import "fmt"
// 1.定义方法1
func method(a bool, b int, c string) (bool, int, string) {
return a, b, c
}
// 2.定义方法
func method2(a bool, b int, c string) (e bool, f int, g string) {
e = a
f = b
g = c
return
}
func main() {
a, b, c := method(true, 123, "abc")
fmt.Printf("%v %v %v\n", a, b, c)
a1, b1, c1 := method(true, 123, "abc")
fmt.Printf("%v %v %v\n", a1, b1, c1)
}
![80112a5225db34d165475b6dd6e563c6.png](https://i-blog.csdnimg.cn/blog_migrate/5ba28fc367c57833a6aea26fc304c95b.png)
觉得不错,请点个在看