Go入门(四)-流程控制与struct

4 流程控制
编程语言有三宝:条件判断,循环,跳转,Go也不例外。
4.1 条件判断if和else
4.1.1 条件判断里面不需要括号;
4.1.2 可以声明一个变量,该变量只在条件逻辑块内有效; 

4.2 for循环
4.2.1 标准表达式如下:
for expression1; expression2; expression3 {
//
}

4.2.2 简略表达式,跟我们的java的while是一样的:

4.3 for使用range关键字读取slice和map,如果使用符号“_”代替k,表示放弃读取key,

5 switch
用于基于不同条件执行不同动作,每一个 case 分支都是唯一的,从上直下逐一测试,直到匹配为止。基本表达式如下:
switch var1 {
    case val1:
        ...
    case val2:
        ...
    case val3,val3.1 val3.2:
    ...
    default:
        ...
}
5.1 switch的表达式var1可以使用任意类型,val2,val3可以是任意类型,但必须是相同的类型;

5.2 如果没有表达式,会匹配true;
5.3 找到匹配项后,不需要加break,程序不会继续匹配余项,如果需要继续执行其他case的内容,使用关键字 fallthrough ,这时候,不会再执行case的条件判断

结果会输出:
优秀!
良好
及格

5.4 可以进行某个 interface 变量中实际存储的变量类型;

输出结果如下:
 x 的类型 :<nil>

6 struct
6.1 Go的结构体,你可以先简单地理解为一个实体类,基本表达式如下:

6.2 初始化的方式有如下几种:

6.2 匿名字段,当结构体A,有一个结构体B的字段,则A拥有结构体B所有的字段,类似java的继承,匿名字段支持所有内置类型和自定义类型;
6.3 如果引入的结构体与本结构有相同的字段,先访问外层,也就是本结构体的字段;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值