Go语言基础之流程控制

if else(分支结构)

package main

import "fmt"

// if条件判断
func main(){
// age := 19
// if age > 18 { // 如果 age > 18 执行这个{}中的代码
// fmt.Println("赌场开业")
// }else { // 否则执行这个{}中的代码
// fmt.Println("写作业")
// } // // 多个判断条件
// if age > 35{
// fmt.Println("人到中年")
// }else if age > 18{
// fmt.Println("青年")
// }else {
// fmt.Println("好好学习")
// } // 作用域
// age 变量此时只在if条件判断语句中生效
if age := 19; age > 18 {
fmt.Println("赌场开业")
} else {
fmt.Println("写作业")
} // fmt.Println(age) // 这里找不到age }

for(循环结构)

for循环的基本格式如下:

for 初始语句;条件表达式;结束语句{
循环体语句
}

for range(键值循环)

Go语言中可以使用for range遍历数组、切片、字符串、map 及通道(channel)。 通过for range遍历的返回值有以下规律:

  1. 数组、切片、字符串返回索引和值。

  2. map返回键和值。

  3. 通道(channel)只返回通道内的值。

    package main

    import "fmt"

    // for循环

    func main(){

    // 基本格式

    for i := 0;i < 10; i++{

    fmt.Println(i)

    }

     // 变种1
    // var i = 5
    // for ;i<10;i++{
    // fmt.Println(i)
    // } // 变种2
    // var i = 5
    // for i<10{
    // fmt.Println(i)
    // i++
    // } // 无限循环
    // for {
    // fmt.Println("123")
    // } // for range循环
    s := "Hello 中国"
    for i,v := range s{
    // fmt.Println(i, v)
    fmt.Printf("%d %c\n", i, v)
    }

    }

GO语言学习——Go语言基础之流程控制一的更多相关文章

  1. C语言学习笔记(四) 流程控制

    流程控制 流程控制,说通俗一点就是程序代码执行的顺序.不管对于哪门语言来说,流程控制都是很重要的一部分内容: 流程控制的分类,可以分为三大类: 1.顺序 这个很好理解,顺序执行就是代码从上往下一行行的 ...

  2. R语言学习4:函数,流程控制,数据框重塑

    本系列是一个新的系列,在此系列中,我将和大家共同学习R语言.由于我对R语言的了解也甚少,所以本系列更多以一个学习者的视角来完成. 参考教材:<R语言实战>第二版(Robert I.Kaba ...

  3. c语言学习笔记(4)——流程控制

    一.什么是流程控制 程序代码执行的顺序 流程控制分类 顺序执行 选择执行 定义 有选择的执行某些代码 分类 if switch 循环执行 定义 某些代码会被重复执行 分类 for while do w ...

  4. Go语言基础之流程控制

    Go语言基础之流程控制 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”. Go语言中最常用额流程控制有if和for,而switch和goto主要是为了简化代 ...

  5. 《快乐编程大本营》java语言训练班-第4课:java流程控制

    <快乐编程大本营>java语言训练班-第4课:java流程控制 第1节. 顺序执行语句 第2节. 条件分支语句:if条件语句 第3节. 条件分支语句:switch 条件语句 第4节. 条件 ...

  6. 【shell编程】之基础知识-流程控制

    和Java.PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): <?php if (isset($_GET["q"])) { search(q); ...

  7. Java基础-程序流程控制第二弹(循环结构)

    Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...

  8. Java基础-程序流程控制第一弹(分支结构/选择结构)

    Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...

  9. JAVA入门基础及流程控制

    JAVA入门基础及流程控制 数据类型 位 存储单位 eg:0001 0011 八位 字节 byte 处理数据单位 一字节等于八位 eg:1b=0011 0001 类变量: static int num ...

随机推荐

  1. .Net Core EF的使用步骤

    EF Core--Code First (代码优先) 第一步 安装 NuGet包 Microsoft.EntityFrameworkCore Microsoft.EntityFrameworkCore ...

  2. Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?

    (1)不可中断状态:进程处于睡眠状态,但是此刻进程是不可中断的.不可中断,指进程不响应异步信号. (2)暂停状态/跟踪状态:向进程发送一个 SIGSTOP 信号,它就会因响应该信号 而进入 TASK_ ...

  3. elasticsearch 了解多少,说说你们公司 es 的集群架构,索 引数据大小,分片有多少,以及一些调优手段 ?

    面试官:想了解应聘者之前公司接触的 ES 使用场景.规模,有没有做过比较大 规模的索引设计.规划.调优. 解答: 如实结合自己的实践场景回答即可. 比如:ES 集群架构 13 个节点,索引根据通道不同 ...

  4. MyBatis与Hibernate有哪些不同?

      (1)Mybatis和hibernate不同,它不完全是一个ORM框架,因为MyBatis需要程序员自己编写Sql语句. (2)Mybatis直接编写原生态sql,可以严格控制sql执行性能,灵活 ...

  5. 你如何确保 main()方法所在的线程是 Java 程序最后结束 的线程?

    我们可以使用 Thread 类的 join()方法来确保所有程序创建的线程在 main()方法退出前结束.

  6. 在java web工程中实现登入和安全验证

    登入页面的话我们之前做过直接可以拿来用翻一翻之前的博客就可以找到 在这个基础上添加验证功能 代码如下: 1 package security; 2 /** 3 * @author 鐜嬭儨鍗? 4 */ ...

  7. centos 安装solr6

    1.到solr官网下载.tgz 结尾的文件 2.tar zxvf solr*.tgz 解压文件 3.进入solr的解压目录里的bin目录 执行 ./solr start -force 执行成功后 可访 ...

  8. ROS学习文章

    ros机器人到底有没有必要学习?

  9. 首次写iPad布局感想(H5)

    一直做前端工作,却从来没有开发过平板的项目,想来也是有遗憾的,孰知,新公司的第二个项目就是要适配平板,刚开始是懵的,对于兼容,感觉是自己的短板,但庆幸的是这一版只需要兼容iOS系统就可以. 那我现在就 ...

  10. java中字符串池,String池,共享池到底是怎么回事?

    栈中有共享池的概念,比 如下面例子中,sz="hello";在栈中创建一个String对象引用变量sz,然后看看栈中有没有"hello",如果没有,则将&quo ...