前言
正常来说,一门语言最基本的语法,那就是判断、循环。我们已经讲了判断,今天我们来搞一下循环。
话不多说,开搞!
Java中的循环
for循环
public static void main(String[]args) { for(int i=0;i < 10;i++) { // for循环 continue; } }
while循环
public static void main(String[]args) { while(true) { // while 循环 } }
do while循环
do { // do something } while(true);
Go中的循环
for循环
示例1:与Java相比省略小括号
package main import ( "fmt" ) func main() { for i := 1; i < 10; i++ { fmt.Println(i) } }
示例2:和while相同,break、continue同java关键词一样的
package main import ( "fmt" ) func main() { i := 0 //省略另外两项,相当于java中的while for i < 3 { i++ } //break用法相同 for i == 3 { fmt.Println(i) break } }
示例3:死循环,三项均可省略
package main func main() { for { } for true { } }
示例4:嵌套循环和Java也是一样,哈哈不再赘述演示了。
示例5:range循环 -- Go中拥有的方式
package main import "fmt" func main() { var data [10]int = [10]int{1,2,3,4,5,6,7,8,9,10} for i, num := range data { fmt.Println(i,num) } }
goto
在Go语言中,使用了一种跳转方式。不知道,谁能记得,在Java中预留的没有使用的关键字,Goto。虽然预留,但是没有使用。在C语言中是正常用的。
在Go语言中,使用了goto关键字,进行跳转。
package main import "fmt" func main() { //goto可以用在任何地方,但是不能跨函数使用 fmt.Println("start") //go to的作用是跳转,中间的语句不执行,无条件跳转 goto my_location //goto是关键字, my_location可以自定义,他叫标签 fmt.Println("over") my_location: fmt.Println("location") }
总结
选择结构、判断结构、循环结构,是我们再学习一门语言的必须掌握的结构体。之前,我们学了判断,今天,我们学习了循环,对比Java和Go的结构,其实基本上异曲同工之妙。
时间是一个难以匹敌的对手,总会让你上前。也总会让你变成一个不同的存在。
所以努力上前吧。加油!!