Fork me on GitHub

Go语言开发-过程式编程-For循环语句

5.3. for循环语句 Go语言支持两种for循环语句,for和for…range语句。语法如下:

大括号是必需的,但是分号只有在可选的optionalPreStatement或optionalPostStatement语句存在时才…

Go语言开发-过程式编程-switch语句-表达式开关

5.2.2.1. 表达式开关 Go语言的表达式开关语法如下:

如果使用了可选声明,则分号是必需的,而不管其中是否使用了可选表达式。每个case块都由零个或多个语句组成。 如果switch语句中没有任何可选表达式,则编译器会假定表达式的…

Go语言开发-过程式编程-IF语句

5.2.1. if语句 Go语言的if语句语法如下:

在一个if语句块中可能含有零个或多个elseif子句,以及零个或一个else子句,而每个子句中又由多个语句组成。 If中的大括号是必需的,但是分号只有在使用可选声明的情况下才需要。…

Go语言开发-过程式编程-类型断言

5.1.2.类型断言 一个类型的方法集是指可以被该类型的值调用的所有方法的集合,对于没有方法的类型来数该集合为空。Go语言的interface{}类型用于表示空接口,即一个含有空集的方法集的类型的值。因为每个类型都有一个包含空集的方法集(不论其拥有多少方法),一个interface{}可以用于表示一…

Go语言开发-字符串-regexp包

3.6.5. regexp包 本小节给出了一些表,这些表列出了regexp包里的函数和支持的正则表达式语法,同时也给出了几个例子。在本小节或本书的其他地方也会使用到正则表达式,我们假设读者已经具有了一些正则表达式基础。 regexp包是Russ Cox的RE2正则表达式引擎的Go语言实现,该引擎速度…

Go语言开发-字符串-strconv包

3.6.2. strconv包
strconv包提供了许多用于将字符串和其他类型相互转换的函数。表3.8和表3.9(也可以参考fmt包的打印和扫描函数)列出了这些函数。接下来让我们看几个例子。一个常见的需求是将字符串表示的值转换为布尔值。我们可以使用 strconv.ParseBool() 函数来实现。

Go语言开发-字符串-strings包

3.6.1. strings包
在字符串处理中一个常见的需求是能够将字符串切分为字符串切片,然后再做进一步的处理,例如,将字符串转换为数字或去除字符串前后的空格。为了学习如何使用strings包中的函数,我们将通过一些简单的例子来使用这些函数。表3.6和表3.7列出了strings包中所有的函数。首先让我们以切分字符串开始。

Go语言开发-字符串-为调试格式化

3.5.6.为调试格式化
%T(类型)用于打印内置的或自定义值的类型,%v用于打印内置值的值。事实上,%v还可以打印自定义类型的值,对于没有定义String()方法的类型使用默认的格式,对于定义了String()方法的类型使用该类型的String()方法打印。
上面这个例子演示了如何使用%t和%v来输出任意值的类型和值。