精通
英语
和
开源
,
擅长
开发
与
培训
,
胸怀四海
第一信赖
锐英源精品原创,禁止全文或局部转载,禁止任何形式的非法使用,侵权必究
循环是最常用的计算机处理办法,计算机就是用变态的高速能力来穷尽数据找结果,所以掌握循环是初学者必须做的事。
在GO语言中,只有for这一种循环语句,for循环有多种表达形式,其中一种为:
for initialization; condition; post { // zero or more statements }
花括号后要带个制表符让代码对齐。
for后面跟的三个部分不同于其他语言,是不需要包含在括号里面的,但是要注意,各部分之间要用分号分隔开。 initialization是可选的,倘若存在则必须为一个简单语句,即短变量声明、自增语句、赋值语句或函数调用,在循环开始之前就执行了;condition是一个布尔表达式,循环迭代开始之前执行,其值为true就执行循环体;post在一次循环结束之后执行,再回到condition处进行运算,值为true进入下一次循环,值为false则循环结束。
for后面的三个部分都可以省略,若省略了initialization和condition,则post前的分号也省略。如果这三个部分都省略了,成为以下这种形式:
for { // ... }
这个循环就变成了无限循环,需要用break或者return语句来跳出循环。
循环经常要和数组结合使用,上文所说的穷尽数据的形式一般都是数组,特殊场合下不一样。下面是数组结合for使用的代码示例:
var a [3]int // array of 3 integers3个整数的数组 // Print the indices and elements.打印下标和项 for i, v := range a {//逗号表达式是数据组的意思,表示range的结果是2个部分,第一部分是下标,第二部分是项 fmt.Printf("%d %d\n", i, v) }
以控制台形式生成项目,则要和命令行参数打交道,比如:dir是查看当前目录下文件和目录,命令行参数数组里只有一个字符串dir,而dir temp,则有2个,一个是dir,另外一个是temp。
goland里命令行参数配置如下图:
goland里main函数代码如下:
func main() { s, sep := "", "" for _, arg := range os.Args[1:] {//_代表空,不需要数据组里的变量,可以用_代表 s += sep + arg sep = " " } fmt.Println(s) }
输出窗口结果如下:
go build: -i flag is deprecated G:\GoProj\bin\go_build_shwf.exe a a a abc #gosetup a a a abc Process finished with the exit code 0