Golang
来吧来吧~终於来到了回圈的世界,先上菜看看for的表现是如何的?
For
package main
import "fmt"
func main() {
i := 1
for i <= 10 {
fmt.Println(i)
i++
}
for i := 1; i <= 10; i++ {
fmt.Println(i)
}
}
此时break返回也来凑热闹了,原来跟其他家的玩法雷同阿,加了break就可以从回圈中离开罗!!
package main
import "fmt"
func main() {
for i := 1; i <= 10; i++ {
if 5 < i {
break
}
fmt.Println(i)
}
}
阿~如果返回都一样,没道理忽略此次回圈的方式会不同吧!
package main
import "fmt"
func main() {
for i := 1; i <= 10; i++ {
if i%2 == 0 {
continue
}
fmt.Println(i)
}
}
另外来看一下特别的goto吧!!
goto (跳到同函式中某个位置)
备注:
Goto这个使用方式看起来是颇具争议的,有些人认为使用goto会让程序的结构变得复杂(因为他会直接跳离),但也有人主张适时的使用goto反而可以让程序码更简洁,这部分就见仁见智罗!
package main
import "fmt"
func main() {
a := 10
LOOP: for a < 20 {
if a == 15 {
a = a + 1
goto LOOP
}
fmt.Println(a)
a++
}
}
最後来看一下 九九乘法呗
package main
import "fmt"
func main() {
twoForMethod()
gotoMethod()
}
//
func twoForMethod() {
for m := 1; m < 10; m++ {
for n := 1; n <= m; n++ {
fmt.Printf("%dx%d=%d ",n,m,m*n)
}
fmt.Println("")
}
}
//
func gotoMethod() {
for m := 1; m < 10; m++ {
n := 1
LOOP: if n <= m {
fmt.Printf("%dx%d=%d ",n,m,m*n)
n++
goto LOOP
} else {
fmt.Println("")
}
n++
}
}
阵列
宣告阵列的时候,要注意一下赋值的是int还是string唷,参考范例如下
package main
import "fmt"
func main() {
var arr [10]int
var i,j int
var langs [4]string
langs[0] = "Go"
fmt.Printf("langs[0] = %s\n", langs[0] )
for i = 0; i < 10; i++ {
arr[i] = i /* 设置 i + 100 */
}
/* 输出 */
for j = 0; j < 10; j++ {
fmt.Printf("arr[%d] = %d\n", j, arr[j] )
}
}
然後我听隔壁的老王说了一件很重要的事情
golang阵列的长度在定义後不可更改
golang阵列的长度在定义後不可更改
golang阵列的长度在定义後不可更改
很重要,所以我打了三次! 绝对不是混字阿
在开发时,我们总是需要为系统加入新的功能,这意味着专案中的档案会逐渐增多,虽然依照要扩充的功能不同,...
断言是关於实体或主题的陈述,通常以名称-值对的形式表示。 “ MaritalStatus = Fal...
自我介绍 大家好,我是 Nick,15年开始接触 iOS App 的开发,在学习的过程中独立完成一...
制作 K 线的 Data Model,从前面文章 [加权指数K线图实作.2] 的 response ...
碍於篇幅的关系,来不及介绍关於Rails MVC的所有全貌。在Day23介绍了基本的MVC操作,今天...