zoukankan      html  css  js  c++  java
  • Go开发之路 -- 流程控制

    1. if else

    if 条件 {
    
    } else {    // else必须写在这里
    
    }
    // 写一个程序, 从终端读取输入, 并转成整数. 如果转成整数出错,
    // 则输出'can not convert to int', 并返回.否则输出该整数
    
    package main
    
    import (
        "fmt"
        "strconv"
    )
    
    func main() {
        var s string
        fmt.Scanf("%s", &s)
        res, err := strconv.Atoi(s)
        if err != nil {
            fmt.Println("can not convert to int.err: ", err)
            return
        }
        fmt.Println(res)
    
    }
    练习 10

    2. swith case

    swith var {
        case var1:
    
        case var2:
    
        case var3:
    
        default: 
    
    }
    // 猜数字, 写一个程序,随机生成一个0 到100 的整数n,
    // 然后用户在终端输入数字,如果和n 相等,则提示用户猜对了
    // 如果不相等,则提示用户,大于还是小于n
    
    package main
    
    import (
        "fmt"
        "math/rand"
    )
    
    func main(){
        n := rand.Intn(100)
        flag := true
        for flag {
            var number int
            fmt.Scanf("%d
    ", &number)
            switch {
            case number == n:
                fmt.Println("猜对了.")
                flag = false
            case number > n:
                fmt.Println("大了.")
            case number < n:
                fmt.Println("小了.")
            }
    
        }
    }
    练习11

    3. for 语句

    /*
    写一个程序, 在终端打印如下图形:
    A
    AA
    AAA
    AAAA
    AAAAA
    */
    
    package main
    
    import (
        "fmt"
        "strings"
    )
    
    func main() {
        var s string = "A"
        for i := 1; i < 6; i++ {
            res := strings.Repeat(s, i)
            fmt.Println(res)
        }
    }
    练习 12

    4. for range

    5. break continue

    package main
    
    import "fmt"
    
    func main(){
        str := "hello, 中国"
        for index, value := range str {
            fmt.Println(index, value)    // 打印的值是ASCII码
            fmt.Printf("index[%d], value[%c], len[%d]
    ", index, value, len([]byte(string(value))))
        }
    
        for index, value := range str {
            if index > 2 {
                continue
            }
            if index > 4 {
                break
            }
            fmt.Println(index, value)
        }
    }

    6. goto和label语句

    package main
    
    func main() {
        i := 0
        HERE:
            print(i)
            i++
            if i == 5 {
                return
            }
            goto HERE
    }
  • 相关阅读:
    Spring整合MyBatis(一)MyBatis独立使用
    Spring AOP源码分析(三)创建AOP代理
    Spring AOP源码分析(二)动态A0P自定义标签
    Spring AOP源码分析(一)使用示例
    JDK(十)JDK1.7&1.8源码对比分析【集合】ConcurrentHashMap
    JDK(九)JDK1.7源码分析【集合】HashMap的死循环
    JDK(八)JDK1.7&1.8源码对比分析【集合】HashMap
    MySQL(五)SELECT语句执行顺序
    版本控制器:SVN
    springmvc
  • 原文地址:https://www.cnblogs.com/lpgit/p/10632847.html
Copyright © 2011-2022 走看看