4.1Go if-else
1. Go if-else
Golang程序的流程控制决定程序如何执行,主要有三大流程控制,顺序控制、分支控制、循环控制。
条件语句需要定义一个或多个条件,并且对条件测试的true或false来决定是否执行。
1.1. 顺序控制
代码自上而下逐行执行,中间没有判断、跳转,按默认流程执行,即顺序控制。
1.2. 分支控制
让程序有选择的执行,有单分支、双分支、多分支
单分支
语法
if 表达式为真{
//代码
}else{
//否则进入此语句块
}
实例
package main import "fmt" func main() {
var age int
fmt.Println("请输入您的年纪:")
//获取用户输入,传入变量地址,防止值拷贝
fmt.Scanln(&age)
if age > 18 {
fmt.Println("你已经是个18岁的小伙子了!!加油")
}
}
多重if嵌套
package main import "fmt" func main() {
a := 100
b := 200
if a == 100 {
if b == 200 {
fmt.Println("a为100,b为200")
}
} else {
fmt.Println("a或b有一个不匹配")
} }
双分支
package main import "fmt" func main() {
var age int
fmt.Println("请输入您的年纪:")
//获取用户输入,传入变量地址,防止值拷贝
fmt.Scanln(&age)
if age > 18 {
fmt.Println("你已经是超过18岁的小伙子了!!加油")
//这个else不能换行,必须这么写
} else {
fmt.Println("未满18,回家写作业!!")
}
}
多分支

package main import (
"fmt"
) /*
有一核桃,将被进行以下处理
干干巴巴、麻麻赖赖、那就盘他!!
通透圆润,好东西!!
甭管什么东西,盘他!! */
func main() {
var hetao string
fmt.Println("请输入核桃的成色")
fmt.Scanln(&hetao) //写入变量 //多分支判断
if hetao == "干干巴巴,麻麻赖赖" {
fmt.Println("盘他!!")
} else if hetao == "通透圆润" {
fmt.Println("好东西!!")
} else {
fmt.Println("管他三七二十,来啥盘啥!!")
}
}
4.1Go if-else的更多相关文章
- 1go基本语法
// week1 project main.go//导入一个包(目录) package main //导入方法 import "fmt" //createMessage函数(参数, ...
- 10.1Go Mysql
第十章 Go Mysql 准备好mysql数据库服务端数据. 创建test数据库 MariaDB [(none)]> create database test; Query OK, 1 row ...
- 8.1Go并发
第八章 Go并发 Go语言区别于其他语言的一大特点就是出色的并发性能,最重要的一个特性那就是go关键字. 并发场景: UI小姐姐一边开着PS软件,一边微信疯狂的和产品经理打字交流,后台还听着网易云音乐 ...
- 6.1Go方法
第六章 Go方法 在第三章中讲解了struct,面向对象编程OOP已经是一个编程范式了,Go语言同样支持OOP开发. 一个对象就是一个变量,在这个对象中包含了一些方法,一个方法是一个和特殊类型关联的函 ...
- 3.1Go变量
3.1 Go变量 变量是对内存中数据存储空间的表示,如同门牌号对应着房间,同样的,变量名字对应变量的值. 变量:本质就是一块内存空间.用于存储某个数值.该数值在运行时可以改变. 变量使用步骤 1.声明 ...
- 2.1Go语言特性
1.1.2. 编程语言类型 静态语言,动态语言 静态语言:强类型语言 定义变量,必须指明数据类型,存储对应类型的数据. 例如java,go,c 动态语言:弱类型语言 定义变量,赋值过程决定 ...
- 1.1Go环境搭建之Linux
1.ssh远程登录Linux服务器,可选用iTerm.xshell ssh root@ip 2.建议配置好阿里云yum源.epel源 安装git yum install git 3.下载go源码包 / ...
- go语言学习入门篇1---go语言的主要特性与发展
1.1 影响 Go 语言发展的早期编程语言 正如 "21 世纪的 C 语言" 这句话所说,Go 语言并不是凭空而造的,而是和 C++.Java 和 C# 一样属于 C 系.不仅如此 ...
- EF里查看/修改实体的当前值、原始值和数据库值以及重写SaveChanges方法记录实体状态
本文目录 查看实体当前.原始和数据库值:DbEntityEntry 查看实体的某个属性值:GetValue<TValue>方法 拷贝DbPropertyValues到实体:ToObject ...
随机推荐
- ST3 package control
view-> showconsole (ctrl+`) import urllib.request,os,hashlib; h = 'df21e130d211cfc94d9b0905775 ...
- Unity 极简UI框架
写ui的时候一般追求控制逻辑和显示逻辑分离,经典的类似于MVC,其余大多都是这个模式的衍生,实际上书写的时候M是在整个游戏的底层,我更倾向于将它称之为D(Data)而不是M(Model),而C(Ctr ...
- 【ejabberd】安装XMPP服务器ejabberd(Ubuntu 12.04)
ejabberd ejabberd is a free and open source instant messaging server written in Erlang/OTP. ejabberd ...
- Vue Cli 3 打包上线 静态资源404问题解决方案
报错原因:静态资源丢失 解决方案 官方文档https://cli.vuejs.org/zh/config/#vue-config-js baseUrl 从 Vue CLI 3.3 起已弃用,请使用pu ...
- JavaSE——装饰设计模式+简单加密解密工程
2019独角兽企业重金招聘Python工程师标准>>> 声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权:凯哥学堂旨在促进VIP学员互相学习的基础 ...
- USACO Training Section 1.1黑色星期五Friday the Thirteenth
题目描述 13号又是一个星期五.13号在星期五比在其他日子少吗?为了回答这个问题,写一个程序,要求计算每个月的十三号落在周一到周日的次数.给出N年的一个周期,要求计算1900年1月1日至1900+N- ...
- 一只简单的网络爬虫(基于linux C/C++)————守护进程
守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进程.它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件.守护进程常常在系统引导装入时启动, ...
- HTTP请求头中的X-Forwarded-For介绍
概述 我们在做nginx方向代理的时候,为了记录整个代理过程,我们往往会在配置文件中加上如下配置: location ^~ /app/download/ { ... proxy_set_header ...
- OSG程序设计之更新回调
更新回调(Update Callback)涉及到一个类:osg::NodeCallback.这个类重载了函数调用操作符.当回调动作发生时,将会执行这一操作符的内容. 如果节点绑定了更新回调函数,那么在 ...
- springboot中json转换LocalDateTime失败的bug解决过程
环境:jdk1.8.maven.springboot 问题:前端通过json传了一个日期:date:2019-03-01(我限制不了前端开发给到后端的日期为固定格式,有些人就是这么不配合), ...