news 2026/2/11 17:14:54

1.3 Go语言核心语法速成:变量、函数、结构体10分钟快速上手

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
1.3 Go语言核心语法速成:变量、函数、结构体10分钟快速上手

1.3 Go语言核心语法速成:变量、函数、结构体10分钟快速上手

引言

Go语言的语法设计简洁而强大,本文将通过大量实例快速掌握Go语言的核心语法:变量声明、函数定义、结构体使用。这些是Go语言的基础,掌握它们就能开始编写Go程序了。

一、变量声明

1.1 变量声明方式

Go语言有多种变量声明方式:

packagemainimport"fmt"funcmain(){// 方式1:使用var关键字varnamestring="Go"// 方式2:类型推断varage=25// 方式3:短变量声明(最常用)city:="Beijing"// 方式4:多变量声明varx,yint=1,2a,b:=3,4// 方式5:变量组声明var(usernamestring="admin"passwordstring="123456"isActivebool=true)fmt.Println(name,age,city,x,y,a,b)fmt.Println(username,password,isActive)}

1.2 零值(Zero Value)

Go语言中,未初始化的变量会有默认值(零值):

packagemainimport"fmt"funcmain(){variint// 0varffloat64// 0.0varbbool// falsevarsstring// ""varp*int// nilvarsl[]int// nilvarmmap[string]int// nilfmt.Printf("int零值: %d\n",i)fmt.Printf("float64零值: %f\n",f)fmt.Printf("bool零值: %t\n",b)fmt.Printf("string零值: '%s'\n",s)fmt.Printf("pointer零值: %v\n",p)fmt.Printf("slice零值: %v\n",sl)fmt.Printf("map零值: %v\n",m)}

输出:

int零值: 0 float64零值: 0.000000 bool零值: false string零值: '' pointer零值: <nil> slice零值: [] map零值: map[]

1.3 常量声明

packagemainimport"fmt"funcmain(){// 单个常量constPi=3.14159// 常量组const(StatusOK=200StatusError=500)// iota常量生成器const(Sunday=iota// 0Monday// 1Tuesday// 2Wednesday// 3Thursday// 4Friday// 5Saturday// 6)fmt.Println(Pi,StatusOK,StatusError)fmt.Println(Sunday,Monday,Tuesday)}

二、基本数据类型

2.1 数值类型

packagemainimport"fmt"funcmain(){// 整数类型vari8int8=127vari16int16=32767vari32int32=2147483647vari64int64=9223372036854775807variint=100// 根据平台决定是32位还是64位// 无符号整数varu8uint8=255varu16uint16=65535varu32uint32=4294967295varu64uint64=18446744073709551615varuuint=200// 浮点数varf32float32=3.14varf64float64=3.141592653589793// 复数varc64complex64=1+2ivarc128complex128=1+2ifmt.Println(i8,i16,i32,i64,i)fmt.Println(u8,u16,u32,u64,u)fmt.Println(f32,f64)fmt.Println(c64,c128)}

2.2 字符串类型

packagemainimport("fmt""strings")funcmain(){// 字符串声明s1:="Hello"s2:="World"// 字符串拼接s3:=s1+" "+s2 fmt.Println(s3)// Hello World// 多行字符串s4:=`这是一个 多行字符串 可以包含"引号"`fmt.Println(s4)// 字符串操作fmt.Println(len(s1))// 5fmt.Println(strings.Contains(s3,"Hello"))// truefmt.Println(strings.HasPrefix(s3,"Hello"))// truefmt.Println(strings.HasSuffix(s3,"World"))// truefmt.Println(strings.Index(s3,"World"))// 6fmt.Println(strings.ToUpper(s3))// HELLO WORLDfmt.Println(strings.ToLower(s3))// hello worldfmt.Println(strings.Split(s3,
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/10 17:53:51

1.6 Go并发模式实战:Select、Context、WaitGroup三大并发原语深度应用

1.6 Go并发模式实战:Select、Context、WaitGroup三大并发原语深度应用 引言 Go语言提供了丰富的并发原语,其中Select、Context和WaitGroup是最常用的三个。掌握它们的使用方法和最佳实践,是编写高质量并发程序的关键。本文将深入解析这三个并发原语的应用场景和实战技巧。…

作者头像 李华
网站建设 2026/2/7 21:34:33

【大数据毕设源码分享】基于Django+大数据技术旅游数据分析推荐系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/2/9 18:51:21

14.2 简历优化:如何写一份让 HR 眼前一亮的云原生 DevOps 简历?

14.2 简历优化:如何写一份让 HR 眼前一亮的云原生 DevOps 简历? 1. 引言:简历是你的第一印象 在竞争激烈的云原生 DevOps 岗位中,一份优秀的简历是获得面试机会的关键。 HR 看简历的时间:平均 6-10 秒 简历通过率:通常只有 10-20% 如何在 6 秒内抓住 HR 的眼球?本节…

作者头像 李华
网站建设 2026/2/9 3:40:48

LED热管理解决方案设计与仿真分析

&#x1f393;作者简介&#xff1a;科技自媒体优质创作者 &#x1f310;个人主页&#xff1a;莱歌数字-CSDN博客 &#x1f48c;公众号&#xff1a;莱歌数字&#xff08;B站同名&#xff09; &#x1f4f1;个人微信&#xff1a;yanshanYH 211、985硕士&#xff0c;从业16年 从…

作者头像 李华
网站建设 2026/2/9 20:35:31

【读书笔记】《零售的哲学》

《零售的哲学》&#xff1a;711创始人铃木敏文的逆袭之路 一、为什么要读这本书&#xff1f; 1. 711是我们身边的现象级企业 无时无刻出现在街角&#xff0c;需要了解这个伙伴如何成长了解一个从普通人到商业巨子的完整逆袭故事 2. 铃木敏文的起点与我们相同 不是富二代&#x…

作者头像 李华