Golang基础(一)

Golang基础(一)

@([07] golang)

程序的入口是main包
包名和导入路径的最后一个目录一致
包的导入
通过import "包名"的方式可以导入单个包,
导入多个包可以通过多次导入单个包或者import ("包名1" "包名2")的方式导入多个包。
包的导出名
在Go中,首字母大写的名称是被导出的。
Foo 和 FOO都会被导出,但foo不会被导出。

函数

函数可以有零个或多个参数
当两个或多个连续的函数名参数是同一类型,除最后一个类型外,其他可省略。
x int, y int 可简写为 x,y int
go函数可以返回任意数量的返回值
可以对返回值进行命名,当使用没有参数的return语句时返回结果的当前值。

变量

变量名规范
由数字、字母、下划线组成,首字符只能是字母或下划线。(和C一致)
键字var
golang中声明变量一般使用var关键字
var 变量名 变量类型

变量声明

  1. 指定变量类型,但不赋值,使用默认值。
        var num int
        num = 0
    
  2. 不指定变量类型,根据变量的值自行判断类型
    var num = 0
    
  3. 省略var
    num := 0
    
    注意::=左侧的变量必须是未声明过的变量

变量可以在三个地方声明:

  • 函数内定义的变量称为局部变量。
  • 函数外定义的变量称为全局变量。
  • 函数定义中的变量称为形式参数。

变量的作用范围:

  • 局部变量只能作用在函数体内,参数和返回值变量也属于局部变量。
  • 全部变量可以在整个包甚至外部包(导出后)使用。

全局变量和局部变量名称可以相同,但在函数内的局部变量会被优先考虑。

不同类型的变量的零值(默认值)

类型 默认值
int 0
float32 0
bool false
指针 nil

多变量声明

// 第一种方式
var num1,num2,num3 int
num1,num2,num3 = 1,2,3
// 第二种方式
var num1, num2, num3 = 1,2,3
// 第三种凡是
 num1,num2,num3 := 1,2,3

对于类型不同的多个变量,全局变量,局部变量不能使用这种(:=)方式

声明的局部变量不允许不使用;全局变量是允许声明但不使用。

空白字符 _
_ 用于接收不需要的返回值,比如:a,b = Fun()函数返回两个值,但a不被使用,为了避免报错,这时可以使用_,b = Fun() 或者_a,b = Fun()来接收返回值,这样第一个返回值就会被忽略。
这里有个函数多个返回值的问题。

变量的基本类型

bool
string
int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 uintptr
byte //uint8 的别名
rune // int32 的别名 代表一个Unicode码
float32 float64
complex64 complex128

变量的类型转换

T(v) 将v转换为类型T
go的不同类型之间的项目赋值需要显式转换。

常量

通过 const 关键字定义一个常量
常量的定义不能使用:=

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容