Go语言语法入手 | 青训营笔记

144 阅读2分钟

这是我参与【第五届青训营】伴学笔记创作活动的第1天

关于go错误处理:

首先go是可以返回多值的,所以在函数返回类型上可以写多个值,例如:

image.png image.png

其中,如果被除数为0,erroMsg调用了Error()的方法要错误提示的字符串。

image.png

关于go的bufio包

使用这个包可以大幅提高文件读写的效率。在 golang中,读取文件有四种方法,分别为:使用 ioutil.ReadFile;使用file.Read;使用bufio.NewReader;使用ioutil.ReadAll。 一般文件的读入都是 reader:=bufio.NewReader(os.Stdin); os.Stdin是os包的一个变量。它是os包的[NewFile函数]的返回值。NewFile函数返回指向标准输入文件/dev/stdin的指针。

关于nil的值

在Go语言中,布尔类型的零值(初始值)为 false,数值类型的零值为 0,字符串类型的零值为空字符串 "" ,而指针、切片、映射、通道、函数和接口的零值则是 nil。. nil 是Go语言中一个预定义好的标识符,有过其他编程语言开发经验的开发者也许会把 nil 看作其他语言中的 null(NULL),其实这并不是完全正确的,因为Go语言中的 nil 和其他语言中的 null 有很多不同点。

关于strings.Trim()的用法(默认从左右两边共同出发)

strings.Trim("字符串","指定的字符串/字符"),这个方法是把第一个输入的字符串分拆为一个个字符,逐个比对字符串中的每个字符,直到遇到没有在第二个参数中遇到中出现的字符,返回剩余的字符/字符串。 有点像python里面的strip()方法。

        fmt.Println("aabbccdd\t:", strings.Trim("aabbccdd", "abcd"))   // 空字符串
	fmt.Println("aabbccdde\t:", strings.Trim("aabbccdde", "abcd")) // e
	fmt.Println("aabbeccdd\t:", strings.Trim("aaebedcba", "abc"))  // ebed

关于strconv.Atoi()的用法

Go语言的 strconv 包提供了一个Atoi()函数,该函数等效于ParseInt(str string,base int,bitSize int)用于将字符串类型转换为int类型。

总结

go语言的标准库确实非常强大,语言简洁方面和python不相上下。具体其高性能编程的体现还得接着往下学习~!