Golang 类型定义总结手册| 面试最基础

本文详细介绍了Golang中的各种类型,包括变量、常量、数组、切片、Map、管道Channel、指针和结构体的定义与使用。特别讨论了切片的拷贝、Map的操作以及Channel的同步与异步特性。此外,还涵盖了函数定义和延时调用defer的注意事项。
摘要由CSDN通过智能技术生成

变量 var

  • 关键字是 var ,定义后须被调用
  • 支持多个同时定义
  • 支持使用 := 缺省定义
变量定义(声明)
//使用var 关键字 进行变量定义 : var + 变量名 + 变量类型
//Var name type
var aa int = 10
//var name 省略类型
var aa = 10
// 多个进行定义,也可省略类型
var Mon, Tues, Wed, Thur, Fri, Sat, Sun int
var (
    Monday    int
    Tuesday   int
    Wednesday int
    Thursday  int
    Friday    int
    Saturday  int
    Sunday    int
)
// 使用 := 快捷定义,但":=" 结构不能在函数外使用
 var aa := 10
 //多个定义
 aa, bb :=10, '10'
 //声明但可不使用
 aa,_ := 10, '10'
变量调用
//变量调用分为 局部变量 和 全局变量
package main

//import
import (
	"fmt"
)

//全局变量定义 aa ss
var (
	aa = 3
	ss = "kkk"
)

//局部变量定义
func variableZeroValue() {
	var a int
	var s string
	//fmt.Println(a, s)
	fmt.Printf("%d %q \n", a, s)
}
func main() {
	//fmt.Println("helloworld")
	variableZeroValue()
	}

常量 const

  • 关键字为 const, 可不被调用
  • 枚举类型 iota
  • 常量不可改变
常量定义
//const name type
//const name
//:=
//多常量
const(
aa = 1
bb =2
)
//使用iota, 从0开始,iota 自增被打断,须显式恢复
const (
		b = 1 << (10 * iota)
		kb
		mb
		gb
	)
常量调用
  • 常量使用与变量相似 ,故不赘述
  • 与c语言不同,常量不能通过指针进行强制更改

数组 arr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值