zoukankan      html  css  js  c++  java
  • golang-流程控制

    1.流程控制

      实现逻辑操作的基础

    2.运算符

      比较运算符 (== != < > <= >=)

        go只对true和false进行判定 ,比较运算后可以返回bool值

        常做的比较: 两个字符串是否相同 ,两个数字是否相同 ,两个数字比较大小

      算数运算符 (+ - * / %)

        可以和比较运算符连用改进布尔表达式

      逻辑运算符 (&& || !)

        对布尔表达式进行逻辑运算   &&两面都true则true否则false    ||两边一个true则true否则false       !取反

    3.if语句 

      布尔表达式不用括号 ,但是使用逻辑运算符就要使用括号分隔了

    package main
    
    import "fmt"
    
    func test(x int) {
       if x < 60 {
          fmt.Println("不及格")
       } else if x > 90 {
          fmt.Println("优秀")
       } else {
          fmt.Println("中等")
       }
    }
    
    func main() {
       test(70)
    }

    4.switch语句

      switch语句可以替换if ,从性能和可读性角度都会提高

    package main
    
    import "fmt"
    
    func testcase(x int) {
    
        switch x {
        case 2, 3, 4, 5:
            fmt.Println("春天")
        case 6, 7, 8:
            fmt.Println("夏天")
        default:
            fmt.Println("冬天")
        }
    }
    
    func main() {
        testcase(8)
    }

    5.for循环

      循环执行代码块的内容 ,直到布尔值判断为false

      循环四步 :定义条件变量,判断条件,执行代码,修改变量

    package main
    
    import "fmt"
    
    func main() {
        for i:=0;i<10;i++{           //i++是在执行完循环体代码后执行
            fmt.Println(i)
        }
    }

      range函数循环 ,每次把迭代对象的元素取出来赋值给变量 (循环数组和切片可以返回两个值 >>索引,值)

    package main
    
    import "fmt"
    
    func main() {
        a1 := [5]int{9,8,9,8,9}
        for ind,val :=range a1{
            fmt.Println(ind,val)
        }
    }

      for无限循环实现while

    package main
    
    import "fmt"
    
    func Ing() {
        i := 4
        for i < 10 {
            i++
            fmt.Println("isisis")
        }
    }
    
    func main() {
        Ing()
    }

    6.defer语句

      在函数执行完毕 立即执行defer的代码 ,defer可以是函数

    package main
    
    import "fmt"
    
    func Ing() int {
        fmt.Println("1")
        fmt.Println("2")
        fmt.Println("3")
        defer fmt.Println("A")
        defer test()
        return 10
    }
    
    func test(){
        fmt.Println("test")
    }
    
    func main() {
        Ing()
    }

      

      

  • 相关阅读:
    2019-7-3-WPF-使用-Composition-API-做高性能渲染
    2019-7-3-WPF-使用-Composition-API-做高性能渲染
    2018-8-10-win10-uwp-禁止编译器优化代码
    2018-8-10-win10-uwp-禁止编译器优化代码
    2018-2-13-wpf-如何使用-Magick.NET-播放-gif-图片
    2018-2-13-wpf-如何使用-Magick.NET-播放-gif-图片
    2019-8-31-Developing-Universal-Windows-Apps-开发UWA应用-问答
    2019-8-31-Developing-Universal-Windows-Apps-开发UWA应用-问答
    2019-3-1-WPF-从零开始开发-dotnet-Remoting-程序
    busybox
  • 原文地址:https://www.cnblogs.com/quguanwen/p/11748649.html
Copyright © 2011-2022 走看看