GO语言基础教程5——流程控制-条件判断

简介: 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”。本节课带来了就是流程控制中的条件判断——if语句/if else语句。

GO语言基础教程5——流程控制-条件判断


GO语言基础教程5——流程控制-条件判断


流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”。


本节课带来了就是流程控制中的条件判断——if语句/if else语句。


if条件判断基本写法


单语句判断

if 表达式 {
    语句
}

例如:

if a==1 {
    fmt.println("a等于1")
}

双语句判断

if 表达式1 {
    语句1
}else{
    语句2
}

例如:

if a==1 {
    fmt.println("a等于1")
}else{
    fmt.println("a不等于1")
}
//如果a=1则执行语句1,否则执行语句2.

多语句判断

if 表达式1 {
    语句1
} else if 表达式2 {
    语句2
} else{
    语句3
}

例如:

if a==1 {
    fmt.println("a等于1")
}else if a == 2{
    fmt.println("a等于2")
} else {
    fmt.println("a既不等于1也不等于2")
}
//如果a=1则执行语句1,如果a=2则执行语句2,否则执行语句3.


if条件判断特殊写法


if条件判断还有一种特殊的写法,可以在 if 表达式之前添加一个执行语句,再根据变量值进行判断,举个例子:

func ifLesson() {
  if a := 1; a==1 {
    fmt.Println("a等于1")
  } else if a==2 {
    fmt.Println("a等于2")
  } else {
    fmt.Println("a既不等于1也不等于2")
  }
}

思考: 上下两种写法的区别在哪里?


这其实是关于变量作用域的问题,感兴趣的小伙伴可以访问,GO语言奇怪的if语句


课后练习


1、编写一个程序来测是成绩好坏,若成绩在90以上为优,在75以上为良,在60以上为及格,低于60为不及格,需注意成绩的取值范围为0~100,如果超出范围则提示成绩有误。

相关文章
|
6天前
|
运维 监控 算法
监控局域网其他电脑:Go 语言迪杰斯特拉算法的高效应用
在信息化时代,监控局域网成为网络管理与安全防护的关键需求。本文探讨了迪杰斯特拉(Dijkstra)算法在监控局域网中的应用,通过计算最短路径优化数据传输和故障检测。文中提供了使用Go语言实现的代码例程,展示了如何高效地进行网络监控,确保局域网的稳定运行和数据安全。迪杰斯特拉算法能减少传输延迟和带宽消耗,及时发现并处理网络故障,适用于复杂网络环境下的管理和维护。
|
7天前
|
编译器 Go
揭秘 Go 语言中空结构体的强大用法
Go 语言中的空结构体 `struct{}` 不包含任何字段,不占用内存空间。它在实际编程中有多种典型用法:1) 结合 map 实现集合(set)类型;2) 与 channel 搭配用于信号通知;3) 申请超大容量的 Slice 和 Array 以节省内存;4) 作为接口实现时明确表示不关注值。此外,需要注意的是,空结构体作为字段时可能会因内存对齐原因占用额外空间。建议将空结构体放在外层结构体的第一个字段以优化内存使用。
|
8天前
|
存储 缓存 监控
企业监控软件中 Go 语言哈希表算法的应用研究与分析
在数字化时代,企业监控软件对企业的稳定运营至关重要。哈希表(散列表)作为高效的数据结构,广泛应用于企业监控中,如设备状态管理、数据分类和缓存机制。Go 语言中的 map 实现了哈希表,能快速处理海量监控数据,确保实时准确反映设备状态,提升系统性能,助力企业实现智能化管理。
25 3
|
7天前
|
存储 缓存 安全
Go 语言中的 Sync.Map 详解:并发安全的 Map 实现
`sync.Map` 是 Go 语言中用于并发安全操作的 Map 实现,适用于读多写少的场景。它通过两个底层 Map(`read` 和 `dirty`)实现读写分离,提供高效的读性能。主要方法包括 `Store`、`Load`、`Delete` 等。在大量写入时性能可能下降,需谨慎选择使用场景。
|
6月前
|
Shell Go API
Go语言grequests库并发请求的实战案例
Go语言grequests库并发请求的实战案例
|
7月前
|
Go
Go 语言为什么不支持并发读写 map?
Go 语言为什么不支持并发读写 map?
|
4月前
|
存储 负载均衡 监控
如何利用Go语言的高效性、并发支持、简洁性和跨平台性等优势,通过合理设计架构、实现负载均衡、构建容错机制、建立监控体系、优化数据存储及实施服务治理等步骤,打造稳定可靠的服务架构。
在数字化时代,构建高可靠性服务架构至关重要。本文探讨了如何利用Go语言的高效性、并发支持、简洁性和跨平台性等优势,通过合理设计架构、实现负载均衡、构建容错机制、建立监控体系、优化数据存储及实施服务治理等步骤,打造稳定可靠的服务架构。
93 1
|
4月前
|
Go 调度 开发者
探索Go语言中的并发模式:goroutine与channel
在本文中,我们将深入探讨Go语言中的核心并发特性——goroutine和channel。不同于传统的并发模型,Go语言的并发机制以其简洁性和高效性著称。本文将通过实际代码示例,展示如何利用goroutine实现轻量级的并发执行,以及如何通过channel安全地在goroutine之间传递数据。摘要部分将概述这些概念,并提示读者本文将提供哪些具体的技术洞见。
|
5月前
|
Java 大数据 Go
Go语言:高效并发的编程新星
【10月更文挑战第21】Go语言:高效并发的编程新星
87 7
|
4月前
|
并行计算 安全 Go
Go语言的并发特性
【10月更文挑战第26天】Go语言的并发特性
36 1

热门文章

最新文章