180课时吃透Go语言游戏后端开发5:Go语言中的条件语句

180课时吃透Go语言游戏后端开发5:Go语言中的条件语句

第5课我们来学习Go语言中的条件语句。条件语句就像是游戏里的关卡选择器,根据不同的条件,程序会执行不同的代码路径。

if 语句

基本格式是 if 条件 { 执行代码 }。当条件为 true 时,就会执行大括号里的代码。

go 复制代码
package main

import "fmt"

func main() {
    score := 85
    if score >= 60 {
        fmt.Println("恭喜你,考试及格!")
    }
}

将以上代码写入main.go,运行结果如下:

bash 复制代码
leicw@Code AI世界:code005$ go run main.go
恭喜你,考试及格!

在这个例子里,如果 score 大于或等于 60,就会打印出"恭喜你,考试及格啦!"。

if - else 语句

格式为 if 条件 { 条件为 true 时执行代码 } else { 条件为 false 时执行代码 }。

go 复制代码
package main

import "fmt"

func main() {
    score := 45
    if score >= 60 {
        fmt.Println("恭喜你,考试及格啦!")
    } else {
        fmt.Println("很遗憾,考试没及格,继续努力!")
    }
}

将以上代码写入main.go,运行结果如下:

bash 复制代码
leicw@Code AI世界:code005$ go run main.go
很遗憾,考试没及格,继续努力!

这里根据 score 的值,程序会执行不同的分支,要么打印及格信息,要么打印没及格的信息。

if - else if - else 语句

当有多个条件需要判断时,可以使用这种形式。

go 复制代码
package main

import "fmt"

func main() {
    score := 85
    if score >= 90 {
        fmt.Println("成绩优秀!")
    } else if score >= 70 {
        fmt.Println("成绩良好!")
    } else if score >= 60 {
        fmt.Println("成绩及格!")
    } else {
        fmt.Println("成绩不及格,加油!")
    }
}

将以上代码写入main.go,运行结果如下:

bash 复制代码
leicw@Code AI世界:code005$ go run main.go
成绩良好!

这段代码会根据 score 的不同区间,打印出不同的评价。

在游戏开发中,条件语句经常用于判断玩家的状态。比如判断玩家的生命值是否小于等于0,如果是,就显示"游戏失败"界面;如果玩家的等级达到某个数值,就解锁新的关卡等等。

你可以试着修改这些示例中的分数值,观察输出结果的变化。同时思考一下在游戏场景中,还能怎样运用条件语句实现不同的逻辑。要是遇到问题,欢迎评论区留言。

推荐阅读

  1. 【Go零基础系列】003:Go语言中的变量详解
  2. 互联网、因特网和万维网傻傻分不清,一文带你彻底理解计算机中的各种网络
  3. 十分钟带你入门Vue.js开发(Vue 3)
  4. 超级详细的Github双重验证开启教程&github Two-factor authentication

每一次点赞 ,都是你无声的鼓励。每一次关注,都是我前行的动力。感谢有你,一起成长!

相关推荐
JWASX20 小时前
Java 转 go 学习 - kitex(5)
学习·golang
猪猪拆迁队21 小时前
跨电脑复制共享-WebRTC 打洞踩坑
前端·后端·go
谢亮_vipxieliang21 小时前
Go net/http 标准库深入——构建生产级 HTTP 服务
http·golang·iphone
小小龙学IT1 天前
Go 语言 gRPC(grpc-go)深度解析
rpc·架构·golang·go
microrain1 天前
KNX 现场没有寄存器表:SagooIoT 楼宇驱动插件的组地址、DPT 与隧道
物联网·golang·开源·sagooiot
Duang007_1 天前
生产可观测性:从“系统慢“到“根因“的完整链路(Go / TypeScript)
后端·python·golang·typescript·prometheus
。小二1 天前
Go 泛型并发利刃:async 库深度评测——370K ops/s、零依赖、生产就绪
开发语言·javascript·golang
newerp1 天前
pprof 火焰图(Flame Graph)阅读与热点代码重构实战
后端·程序员·go
SmalBox1 天前
03-04-架构篇-文件系统架构(IFileSystem)
unity3d·游戏开发
徐小黑ACG1 天前
Golang 基础01
开发语言·后端·golang