if else

else不能换行

if后最好不加小括号,当然可以加,但建议不加

求平方根

引入math包

调用math.Sqrt(num)函数

switch分支

不用加break来跳出,每一个case执行完会自动退出switch控制语句

	switch  key {
case 'a':
println("aaa")
......
defaule:
println("匹配不到会执行我")
}

case后是一个表达式

表达式的数据类型必须与科研一致,否则报错

case后还可以跟多个表达式,用逗号隔开

如果为常亮,所有case后的值不能重复,否则报错

switch后还可不带表达式,类似于if else 分支来使用

		i :=10
switch{
case i==10 : ..
case i==20 :
......
default :
println(“没有匹配到”)
}

switch后还可直接声明一个变量,分号结束 不推荐使用

switch穿透

在case后添加fallthrough,则会执行下一个case叫switch穿透

默认只能穿透一层

typestitch

switch还可被用于type-switch来判断interface变量中实际指向的变量类型

switch与if的比较

若判断的具体数值不多,数据类型为整数,浮点数,字符,字符串这几类用switch,简介高效

对区间判断和bool判断用if

for

和if一样可以不加小括号,返回值为bool类型

三种写法

一般写法

省略初始和步长

三者都省略

for ; ; {}是一个无限循环

一般配合break

for-range方便遍历字符串和数组

str = "abc~ok"
for index, val := range str {
fmt.printf("index = "%d, val = %c \n", index, val)
}

因为是按照字符遍历的所以有中文,也ok

而传统的是按字节遍历的,所以须将数组转为切片 eg: str := []rune(str)

go语言中没有while和do-while,可用foe循环来实现

//while
for{
if 循环条件{
break
}
循环操作
变量迭代
}
//do-while
for{
循环操作
变量迭代
if 循环条件{
break
}
}

多重循环

编程两大绝招

先易后难

复杂问题分解为简单问题

先死后活

break跳转语句

随机数

在go中生成随机数要生成一个随机种子,否则返回的数总是固定的

rand.Seed(time.Now().Unix())
fmt.Println("n",rand.Intn(100)+1)

基本功能

终止某个语句块

使用细节

当初现在多层嵌套的语句块中时,可以通过标签指明要终止的是哪一层语句块

lable2 :
for{
for{
break lable2
}
}

lable只是一个标签名

默认会跳出最近的for循环

continue跳转控制

结束本次循环

用法和break一样也可以标签使用

goto跳转语句

无条件跳转到指定行,配合条件语句

if 条件 {
goto lable2
}
...
....
lable2:
....

一般不主张使用

return

跳出所在方法或函数

普通函数

不再执行return后面的语句

main函数

终止main函数,即终止程序

go-控制语句的更多相关文章

  1. Linux Shell 流程控制语句

    * 本文主要介绍一些Linux Shell 常用的流程控制语句* 1. if 条件语句:if-then/if-elif-fi/if- else-fi if [条件判断逻辑1];then command ...

  2. 使用变量 数据类型转换 逻辑控制语句(begin ...end; case...end; if...else; while)

    一:变量 变量分为局部变量和全局变量  (全局变量是系统自定的,是不可手动给值的,若想自己定义全局变量可考虑创建全局临时表!) 局部变量的定义:  declare @变量名  数据类型 (局部变量只能 ...

  3. Sql Server系列:数据控制语句

    数据控制语句用来设置.更改用户或角色的权限,包括GRANT.DENY.REVOKE等语句. GRANT用来对用户授予权限,REVOKE可用于删除已授权的权限,DENY用于防止主体通过GRANT获得特定 ...

  4. 8-04流程控制语句BEGIN ..END

     流程控制语句: 是用来控制程序流程的语句. 常用的流程控制语句的分类: 顺序结构:BEGIN...END 分支结构: IF ..ELSE 或CASE ..END 循环结构:WHILE 顺序结构 语法 ...

  5. javaScript条件控制语句

    当某段代码的执行,需要首先满足某些条件时,我们就需要用到条件控制语句.判断条件是否满足,满足条件才去执行某些代码. 如判断数组中值等于条件值时,将这个值从数组中删除 a.switch <scri ...

  6. JAVA 1.7 流程控制语句 续

    1. Java中的循环控制语句一共有3种,分别是while,do… while以及for循环.2. while循环,形式为:while(布尔表达式){//待执行的代码}3. do…while循环,新式 ...

  7. JAVA 1.6 流程控制语句

    1. 条件运算符(三元表达式),其形式为:type d = a ? b : c; 具体化形式为:int d = 2 < 1 ? 3 : 4;2. 轻量级的文本编辑器:UltraEdit.Edit ...

  8. 20151013 C# 第一篇 流程控制语句

    20151013 流程控制语句: 1.选择语句 if … else if...else 选择语句 if(布尔表达式){  语句块:} if(布尔表达式){  语句块1:}else{  语句块2:} i ...

  9. Python 3 —— 控制语句

    控制语句 1.if if <s>: ... elif <s>: ... else: ... 2 for for e in list .. if <s> break; ...

  10. java基础3_流程控制语句

    一 条件判断 1. 条件运算符(三元表达式) ,其形式为: type d = a ? b : c; 具体化形式为:int d = 2 < 1 ? 3 : 4; 2. 轻量级的文本编辑器:Ultr ...

随机推荐

  1. PhpSpreadsheet的简单使用

    由于PHPExcel已经不再维护,PhpSpreadsheet是PHPExcel的下一个版本.PhpSpreadsheet是一个用纯PHP编写的库,并引入了命名空间,PSR规范等.这里简单介绍下Php ...

  2. 阿里钉钉技术分享:企业级IM王者——钉钉在后端架构上的过人之处

    本文引用了唐小智发表于InfoQ公众号上的“钉钉企业级IM存储架构创新之道”一文的部分内容,收录时有改动,感谢原作者的无私分享. 1.引言 业界的 IM 产品在功能上同质化较高,而企业级的 IM 产品 ...

  3. react+ant-mobile+lib-flexible构建移动端项目适应设计图尺寸(750)

    使用lib-flexible在react中先安装 npm install lib-flexible --save 因为插件使用的是rem适配,所以安装两个插件 npm install postcss- ...

  4. Python 调用 ES、Solr、Phoenix

    #!/usr/bin/env python # -*- coding:utf-8 -*- # ************************************* # @Time : 2019/ ...

  5. [Spring cloud 一步步实现广告系统] 13. 索引服务编码实现

    上一节我们分析了广告索引的维护有2种,全量索引加载和增量索引维护.因为广告检索是广告系统中最为重要的环节,大家一定要认真理解我们索引设计的思路,接下来我们来编码实现索引维护功能. 我们来定义一个接口, ...

  6. 资深程序员对于Python各个方向的面试经验分享,非常给力!

    之前早有前辈们说过,"裸辞一时爽,一直裸辞一直爽",这话一点不假,裸辞你要面临没有收入来源,但是每天眼睁睁看着各种花销不断支出的煎熬,我主要是觉得一边在上家公司工作一边去下家面试可 ...

  7. ES6新语法(一)

    1.常量         ES5没有定义声明常量的方式,ES6标准中引入了新的关键字const来定义常量.         常量必须给初始值: 常量不能在同一作用域内重新定义或赋值:  <scr ...

  8. 软件设计之基于Java的连连看小游戏(一)——开题及游戏首页的制作

    原本计划紧张忙碌的考试月在图书馆和实验室度过,结果突如其来为期两周的软件设计把课余时间几乎捆绑在了机房.软设没有太多知识上的要求,只要成品简洁美观.实用准确即可.考虑了很久决定要用Java swing ...

  9. .Net Core MVC中过滤器简介

    在.Net Framework MVC 中有四种过滤器,授权过滤器(Authorize).Action 过滤器.结果过滤器(Result).异常过滤器(Exception)四种过滤器.在.Net Co ...

  10. 文本分类Pipeline