美文网首页
跟我一起学习GO语言005

跟我一起学习GO语言005

作者: 搬砖人1314 | 来源:发表于2019-07-06 09:09 被阅读0次

    接上一节继续学习Go语言,存储和组织数据的方式

    首先我们来看看列表增删方法

    初始化列表:变量名:=list.New()

    列表插入元素

    //列表插入元素
        ll := list.New()
        ll.PushBack("fist")
        ll.PushFront(88)

     从列表中删除元素

        //列表插入元素
        ll := list.New()
        //从尾部添加
        ll.PushBack("long")
        //从头部添加
        ll.PushFront(88)
        //尾部添加后保存元素句柄
        element := ll.PushBack("fist")
        //在fist之后添加high
        ll.InsertAfter("high", element)
        //在fist之前添加noon
        ll.InsertBefore("noon", element)
        //删除element对应的元素
        ll.Remove(element)

    遍历列表,访问列表的每一个元素

    //遍历列表,访问列表的每一个元素
        fori := ll.Front(); i != nil; i = i.Next() {
            fmt.Println(i.Value)
        }

    输出:88 long noon high

    接下来我们来看流程控制

    首先我们来看判断语句(if)
    var ageint = 35
        if age < 30 {
            fmt.Println("孩提-幼儿时期,总角-童年时期,及笄-女子15岁,弱冠-男子20岁,花信-女子24岁")
        }elseif age > 30 && age< 40 {
            fmt.Println("而立")
        }else {
            fmt.Println("不惑...")
        }

    有一种特殊的写法,可以在if表达式之前执行语句,执行后根据返回值判断

    func GetNum() int {
        return 22
    }

    if GetNum() < 30 {
            fmt.Println("你还没有到30岁呢?")
        }else if GetNum() > 30 {
            fmt.Println("你这是花骨朵的年龄,嘿嘿")
        }

    前面我们老是用的循环遍历值,我们还是来看看,for中的初始化
    //初始化循环(for)

        step := 2
        for ; step > 0; step-- {
            fmt.Println(step)
        }

        //控制循环的开关(break)

        var long int
        for ; ; long++ {
            if long > 10 {
                break
            }
            fmt.Println(long)

        }

    输出:01 2 3 4 5 6 7 8 9 10

    我们来看一个九九乘法表,这个也是很多基础面试题之一

        //九九乘法表
        forx := 1; x <= 9; x++ {
            fory := 1; y <= x; y++{
                fmt.Printf(" %d*%d=%d", y, x, y*x)
            }
            fmt.Println()
        }

    输出:

    1*1=1
    1*2=2 2*2=4
    1*3=3 2*3=6 3*3=9
    1*4=4 2*4=8 3*4=12 4*4=16
    1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
    1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
    1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
    1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
    1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

    接下来我们看看拥有多个分支的判断(switch)

    //基本写法

        var yy="hello"
        switch a{
        case"hello":
            fmt.Println(1)
        case"word":
            fmt.Println(2)
        default:
            fmt.Println(0)
        }

    分支表达

    //一分多支
        var ddd = "num"
        switch ddd {
        case"num", "day":
            fmt.Println("都是我")
        }

        //分支表达式
        var zz int = 11
        switch {
        case zz > 10 && zz< 20:
            fmt.Println("分支表达式")
        }

    下面我们看跳转到制定标签(goto

    for x := 0; x < 10; x++ {
            for y := 0; y < 10; y++ {
                //当y等于2时跳转标签
                if y == 2 {
                    goto breakHere
                }
            }

        }
        //看看能执行到我吗

        fmt.Println("看看能执行到我吗")
    breakHere:
        {
            fmt.Println("跳转到我这来了")
        }

    我们看看跳出循环标签(continue),结束循环(break

    for i := 1; i < 18; i++ {
            //i等于5的时候跳出循环
            if i == 5 {
                continue
            }

            //结束循环用break
            if i == 8 {
                break
            }
            fmt.Println(i)

        }

    请开始你的表演,践行,践行,再践行。未完待续。。。

    相关文章

      网友评论

          本文标题:跟我一起学习GO语言005

          本文链接:https://www.haomeiwen.com/subject/ioaucctx.html