设为首页收藏本站
查看: 4637|回复: 2

[高级语言] Go语言高级开发与实战 02 分支与循环

[复制链接]
  • TA的每日心情
    难过
    2022-9-23 12:52
  • 签到天数: 201 天

    [LV.7]常住居民III

    发表于 2022-5-1 22:03:49 | 显示全部楼层 |阅读模式


    分支结构-if-else

    在Go语言中,关键字if是用于测试某个条件(布尔型或逻辑型)的语句。如果该条件成立,则会执行if后由大括号{}括起来的代码块,否则就忽略该代码块继续执行后续的代码。

    如果存在第二个分之,则可以在上面的代码的基础上添加else关键字以及另一代码块。这个代码块中的代码只有在条件不满足时才会执行。if{}和else{}中的两个代码块时相互独立的分之,两者只能执行其中一个。一般来说,if-else的分支数量是没有限制的。但是为了代码的可读性,还是不要在if后面加入太多的if-else的结构。如果必须使用这种形式,则尽可能把先满足的条件放在前面。

    关键字if和else之后的{必须和关键字在同一行。如果使用了if-else结构,则前段代码块的}必须和if-else关键字在同一行。这两条规则都是被编译器强制制定的,否则编译不能通过。

    对于C的范式,大括号往往与关键字分离,但在go中,是严格在同一行出现的。

    这是一个基本的结构

    1. if 条件 {
    2.                 满足条件执行
    3.         } else {
    4.                 不满足条件执行
    5.         }
    复制代码


    下面是一个if-else的例子







    For循环
    Go语言的for循环有三种形式只有其中一种使用分号,这种形式符合C的范式。

    • 和C语言的for一样

      这是它的基本结构

      1. for 初始化条件; 继续执行条件; 继续执行操作 {

      2.         }
      复制代码


      下面是一个例子


    • 和C的While一样

      其基本结构是

      1. for 继续执行的条件 {
      2.                 执行代码
      3.         }
      复制代码


      下面是一个例子


    • 和C的for(;;)一样

      即死循环,同2,但是永远执行,不在赘述。



    后期go的用法还可以遍历切片等,利用range关键字。

    for-range结构是Go语言一种特有的迭代结构,在许多情况下都非常有用。它可以遍历数组、切片、字符串、map和通道(channel)

    这里先给出例子



    使用for循环,有以下几点需要注意

    • {必须与for在同一行
    • Go语言不支持以逗号为间隔的多个赋值语句,必须用平行赋值的方式赖初始化多个变量
    • Go中的for循环同样支持用contiue和break来控制循环,但是它提供了一个更高级的break,可以选择中断哪个循环。
    • 在for循环中,如果循环被break,goto,return,panic等语句强制退出,则之后的语句不会被执行






    switch-case

    相对常用,用简单的例子来认识一下



    这一章暂时就说到这里,后面会了解到字符串的知识和技巧





    后言







    实例代码已经往后写了挺多的了,只是文章暂时没有跟上,想提前看看这些代码的可以私聊我




    PS: 强烈要求支持markdown发帖!!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
  • TA的每日心情
    开心
    2024-4-8 00:14
  • 签到天数: 501 天

    [LV.9]以坛为家II

    发表于 2022-5-1 23:52:34 | 显示全部楼层
    讲得好,支持!!!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    红盟社区--红客联盟 

    Processed in 0.065235 second(s), 22 queries.

    站点统计| 举报| Archiver| 手机版| 黑屋 |   

    备案号:冀ICP备20006029号-1 Powered by HUC © 2001-2021 Comsenz Inc.

    手机扫我进入移动触屏客户端

    关注我们可获取更多热点资讯

    Honor accompaniments. theme macfee

    快速回复 返回顶部 返回列表