☰
Go 语言入门--Hello World与数据类型详解
2026/10/18 21:59:15 网站建设 项目流程

1. 第一个 Go 程序

按照惯例,从经典的 “Hello, World” 程序开始。创建一个名为hello.go的文件,输入以下代码:

packagemainimport"fmt"funcmain(){fmt.Println("Hello, World!")}

在终端中切换到该文件所在目录,运行以下命令执行程序:

go run main.go

终端会输出Hello, World!。

下面逐行解释这段代码的含义:

// 双斜杠用来注释// 每个 Go 程序都要以包声明开头,初学阶段 main 包就够了packagemain// "fmt" 是 format 的缩写,package name 用双引号括起来// import "fmt" ≈ importing the fmt packageimport"fmt"// 定义 main 函数,它是程序的入口函数,程序从这里开始执行funcmain(){// 该声明由三部分组成// 1. 指定要使用的软件包的名称,即 fmt// 2. 调用 print 函数// 3. "文本"fmt.Println("Hello World!")}

2. 数据类型和变量

2.1 基本数据类型

类型说明示例
字符串字符序列,用于表示文本"Hello"
整数没有小数部分的数字-10, 0, 112
浮点数包含小数部分的数字7.0, 89.05
布尔逻辑值,仅有两个true(真),false(假)
数组固定长度、单一数据类型的元素序列[3]int{1, 2, 3}
切片类似数组,但长度灵活可变,对内存分配控制更强[]string{"a", "b"}
映射键值对(Key-Value)集合map[string]int{"key": 30}

2.2 为什么需要数据类型?(三大核心原因)

2.2.1 对相关值进行分类

将同类数据归为一组,便于逻辑组织和管理。

2.2.2 定义可执行的操作(行为约束)

数字(整数/浮点数)→ 支持算术运算(加、减、乘、除)。

字符串 → 支持转换为大写、计算长度等操作。

关键点:你不能对整数执行“取长度”或“转大写”等字符串专有操作。编程语言根据数据类型来限制或扩展功能。

2.2.3 定义内存的存储方式(最重要)

当存储数据时,系统需要分配内存空间(memory allocation 预留一定字节数)

例如,需要存储整数类型的数据时,整数→ 通常分配 4 字节 或 8 字节(取决于机器是 32 位还是 64 位,布尔值 → 只分配 1 字节

因此,我们需要数据类型来获取内存分配信息。

3. 打印变量的方法

方法特点换行处理
fmt.Print()直接打印输入内容不自动换行
fmt.Println()打印内容并在末尾自动添加换行自动换行

手动换行:转义字符\n

fmt.Print("Hello\nWorld")// 输出:// Hello// World

格式化打印 —— fmt.Printf
将变量值插入到预定义文本模板中指定位置的过程

fmt.Printf("模板字符串",参数1,参数2,...)

例:

name:="Joe"score:=78fmt.Printf("嘿,%v。你的物理成绩是%d分(满分100分)。",name,score)// 输出:嘿,Joe。你的物理成绩是78分(满分100分)。

一些常用格式说明符:

说明符作用适用类型示例
%v默认格式(通用万能型)任意类型fmt.Printf("%v", name)
%T打印值的数据类型任意类型fmt.Printf("%T", 10)→int
%d十进制整数整数(int 等)fmt.Printf("%d", 100)
%c字符(Unicode 码点)rune / bytefmt.Printf("%c", 65)→A
%q带双引号的字符串(安全转义)字符串fmt.Printf("%q", "Hi")→"Hi"
%t布尔值(true / false)布尔(bool)fmt.Printf("%t", true)
%f浮点数(小数)浮点数(float)fmt.Printf("%f", 3.14)

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询