当前位置: 首页 > news >正文

180课时吃透Go语言游戏后端开发2:Go语言中的变量 - 实践

180课时吃透Go语言游戏后端开发2:Go语言中的变量 - 实践

在这里插入图片描述

第二节课我们来深入了解Go语言的变量。变量就像是一个个小盒子,能用来存放各种数据,在游戏开发里,比如角色的生命值、攻击力等,都可以用变量来表示。

在Go语言里声明变量有好几种方式。

方式一:标准声明

package main
import "fmt"
func main() {
var num int
num = 10
fmt.Println("变量num的值是:", num)
}

在这段代码里,var num int 声明了一个名为 num 的变量,类型是 int(整数类型)。然后 num = 10 是给这个变量赋值。最后通过 fmt.Println 打印出变量的值。

方式二:简短声明

package main
import "fmt"
func main() {
str := "这是一个字符串"
fmt.Println("变量str的值是:", str)
}

这里用 := 这种简短声明方式,它会根据右边的值自动推断变量的类型。str 就是一个字符串类型的变量,存放了“这是一个字符串”这句话。

方式三:多个变量声明

package main
import "fmt"
func main() {
var a, b, c int
a = 1
b = 2
c = 3
fmt.Println("a的值:", a, "b的值:", b, "c的值:", c)
}

这种方式同时声明了三个 int 类型的变量 abc ,之后分别给它们赋值。

实战演练

在游戏开发中,比如我们做一个简单的射击游戏,就可以用变量来记录玩家的子弹数量:

package main
import "fmt"
func main() {
var bulletCount int
bulletCount = 10
fmt.Println("玩家当前子弹数量:", bulletCount)
}
  1. 打开命令行cmd窗口或者Terminal终端(一个黑底可以输入命令的窗口),如下所示:

    在这里插入图片描述

  2. 创建项目文件夹,将以上代码输入到main.go中

    leicw@Code AI世界:180_course_go_game_dev$ mkdir code002
    leicw@Code AI世界:180_course_go_game_dev$ cd code002
    leicw@Code AI世界:code002$ touch main.go
  3. 初始化go模块

    leicw@Code AI世界:code002$ go mod init leicw/code002
    go: creating new go.mod: module leicw/code002
    go: to add module requirements and sums:
    go mod tidy
  4. 运行程序

    leicw@Code AI世界:code002$ go run main.go
    玩家当前子弹数量: 10

现在你可以试着修改一下这些代码,比如改变变量的值,或者用不同的声明方式来声明变量,多练习练习,这样能更好地掌握变量的使用哦。有什么疑问,欢迎评论区留言。

推荐阅读

  1. 搭建Golang在线开发环境(随时随地码代码)
  2. 【python爬虫】10行代码教你开发一个爬虫
  3. mysql开发环境的搭建与基本使用


每一次点赞,都是你无声的鼓励。每一次关注,都是我前行的动力。感谢有你,一起成长!
http://www.hskmm.com/?act=detail&tid=21422

相关文章:

  • 2025“钉耙编程”中国大学生算法设计暑期联赛(4)
  • qdg
  • 别再迷信甘特图了!90%的项目用它都错了
  • ZyperWin++使用教程!让Windows更丝滑!c盘飘红一键搞定!ZyperWin++解决系统优化、Office安装和系统激活
  • 一文详解决策树:ID3与C4.5算法 - 详解
  • 关于处理大批量数据下载和查询时,怎么进行限流和熔断处理(AI)
  • docker服务器运维
  • Nginx 反向代理与负载均衡核心内容总结 - 实践
  • 这款免费Windows优化神器!只有5M电脑绿色工具!ZyperWin++下载安装教程
  • 原核蛋白表达与真核蛋白表达的差异选择
  • 泛型类型参数
  • 完整教程:【数据结构——十字链表】
  • CF1584E Game with Stones 题解
  • 高德解包和打包报错
  • Python 中的上下文管理器与 `with` 语句全解析
  • 用友U8Api 接口对接
  • 填坑:VC++ 采用OpenSSL 3.0接口方式生成RSA密钥 - 教程
  • JUC:AQS
  • CF1980F2 Field Division (hard version) 题解
  • JUC:ThreadLocal
  • 广义串并联图とP6790 [SNOI2020] 生成树
  • JUC: Java对象内存布局和对象头
  • Manim实现波浪形文字特效
  • JUC: synchronized与锁升级
  • lang / philipino / feilvbin / taglog / tajialu
  • Windows上安装2个不同版本的MySQL5.7和8.4
  • cron表达式,每月1号凌晨3点执行和每周4凌晨3点半执行
  • 2025.9.30
  • C#/.NET/.NET Core技术前沿周刊 | 第 56 期(2025年9.22-9.28)
  • 反转链表