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

第二节课我们来深入了解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 打印出变量的值。

方式二:简短声明

go 复制代码
package main

import "fmt"

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

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

方式三:多个变量声明

go 复制代码
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 ,之后分别给它们赋值。

实战演练

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

go 复制代码
package main

import "fmt"

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

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

    bash 复制代码
    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模块

    bash 复制代码
    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. 运行程序

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

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

推荐阅读

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

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

相关推荐
咸鱼2.04 小时前
【java入门到放弃】Dubbo
java·开发语言·dubbo
JAVA面经实录91710 小时前
Java企业级工程化·终极完整版背诵手册(无遗漏、全覆盖、面试+落地通用)
java·开发语言·面试
周杰伦fans11 小时前
AutoCAD .NET 二次开发:深入理解 EntityJig 的工作原理与正确实现
开发语言·.net
Bat U13 小时前
JavaEE|多线程初阶(七)
java·开发语言
谭欣辰13 小时前
C++ 排列组合完整指南
开发语言·c++·算法
foundbug99914 小时前
自适应滤除直达波干扰的MATLAB实现
开发语言·算法·matlab
XDH_CS14 小时前
MySQL 8.0 安装与 MySQL Workbench 使用全流程(超详细教程)
开发语言·数据库·mysql
小短腿的代码世界15 小时前
Qt实时盈亏计算深度解析:从持仓数据到动态盈亏展示
开发语言·qt
小康小小涵15 小时前
基于ESP32S3实现无人机RID模块底层源码编译
linux·开发语言·python