前提准备与运行环境请参考:(新手向)在Linux中使用VScode编写 "Hello,world"程序,并编写测试-Ubuntu20.4
在 Go 中 for
用来循环和迭代,
Go 语言没有 while
,do
,until
这几个关键字,我们只能使用 for
。这也算是件好事!
让我们来为一个重复字符 5 次的函数编写测试。
先编写测试用例
package iteration import "testing" func TestRepeat(t *testing.T) { repeated := Repeat("a") expected := "aaaaa" if repeated != expected { t.Errorf("expected '%q' but got '%q'", expected, repeated) } }
先使用最少的代码来让测试先跑起来
package iteration func Repeat(character string) string { return "" }
把代码补充完整,使得它能够通过测试
func Repeat(character string) string { var repeated string for i := 0; i < 5; i++ { repeated = repeated + character } return repeated }
就像大多数类 C 的语言一样,for
语法很不起眼。
与其它语言如 C,Java 或 JavaScript 不同,在 Go 中 for
语句前导条件部分并没有圆括号,而且大括号 { } 是必须的。你可能会好奇下面这行
var repeated string
我们目前都是使用 :=
来声明和初始化变量。然后 :=
只是简写(简短模式定义看这里