【Golang基础01】

本文详细介绍了Go语言的基础知识,包括变量的声明与默认值、数据类型如浮点数和字符的字节数、类型转换、错误处理、控制流结构如switch和for,以及函数的基本使用。特别强调了Go语言的编译规则和变量作用域,还探讨了指针、引用类型和值类型的区别。此外,还提到了 Panic 和 Recover 机制,以及包管理和导入规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


关于编译

image.png

特殊的点

Go 设计者思想: 一个问题尽量只有一个解决方法

  • go 语言定义的变量或者 import 的包如果没有使用到,代码不能编译通过
  • Go 方法由一条条语句构成,每个语句后不需要分号(Go 语言会在每行后自动加分号)
  • Go 编译器是一行行进行编译的,因此我们一行就写一条语句,不能把多条语句写在同一个
  • 块注释里面**不允许有块注释嵌套 **
  • 一行最长不超过 80 个字符,超过的请使用换行展示
  • {}不允许分行写

变量

标识符

image.png

  1. package名字和目录保持一致
  2. 命名用驼峰法
  3. 首字母大写是公开的首字母小写是私有的

image.png
image.png

变量使用【声明后若不赋值,使用默认值

image.png

变量作用域 赋值语句不能在函数体外

image.png在这里插入图片描述

——下划线问题

image.png

数据类型

image.png
image.png

浮点数 %T类型

image.png

字符类型英文字母-1 个字节 汉字-3 个字节

image.png

bool 类型占 1 个字节
string

image.png
image.png

··->用于多行注释

如果想要修改字符串中的值?

image.png
image.png

默认值

image.png

关于类型转换

Go 在不同类型的变量之间赋值时需要显式转换。也就是说 Golang 中数
据类型不能自动转换
image.png

string和基本类型的互转要确保 String 类型能够转成有效的数据

image.png
image.png
image.png
image.png
image.png
image.png

错误类型

image.png

分组技巧

image.png

iota枚举

image.png
image.png

指针

image.png

引用类型和值类型

image.png
image.png
image.png
数组和结构体是值类型
image.png

struct类型传值的

image.png
image.png
image.png

运算符

++和–
  • Golang 的自增自减只能当做一个独立语言使用

image.png

  • 只有 a++ a-- 没有 ++a --a

image.png

比较运算符"=="不能误写成 “=”
赋值运算符的运算顺序是从右往左
&&和||

image.png
image.png
image.png

运算符的优先级无三目运算符

image.png

Scanln和Scanf

image.png

程序流程控制

Switch
  • case 后面可以带多个表达式
  • case 后面不需要带 break , 程序匹配到一个 case 后就会执行对应的代码块,然后退出 switch,如 果一个都匹配不到,则执行 default
  • switch 后也可以不带表达式,类似 if --else 分支来使用

image.png

  • switch 穿透-fallthrough默认只能穿透一层
  • Type Switch:switch 语句还可以被用于 type-switch 来判断某个 interface 变量中实际指向的

变量类型
image.png

for

image.png
image.png
image.png
image.png
image.png
image.png

if

image.png

goto

image.png

函数

基本语法 也是一种数据类型

(a int,b int)(a,b int)
image.png

Go不支持函数重载
自定义数据类型的使用

type myInt int
:::success
在go中,myInt和int虽然都是int类型,但go认为myInt和int两种类型
:::
image.png

返回值

image.png
image.png

变参

image.png
image.png

defer

image.png
image.png

函数作为值,类型 type typeName func(int)bool

image.png
image.png

Panic和Recover

image.png
image.png

main和init

image.png
image.png
image.png

import/“包”

image.png
image.png
image.png
image.png

匿名函数

image.png
image.png

闭包【未看完】


image.png
image.png
image.png

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值