悉野小楼

导航

[go]学习笔记1

package main
import "fmt"
//全局变量不使用, 不报错, 局部变量会
var n1 = 1
var n2 = 2

var (
    n3 = 3
    n4 = "netty"
)
var abc uint = 15
// ab := 3 //non-declaration statement outside function body 函数外不允许这种写法, 函数里面可以的

//
//
/**
基本类型4种:
数值 整数(int, int8, int16, int32, int64, uint, uint8, uint16, uint32, uint64, byte)
    浮点数 (float32, float64)
字符型 (没有单独的字符, 用byte保存)
布尔型 (bool)
字符串(string)

派生数据类型/复杂数据类型 指针,数组,结构体,管道,函数,切片, 接口, map
**/
func  main(){
    //4种方法定义
    var age int //必须写类型, 初始为0
    var tmp int = 3 //初始化为3
    var num = 5.5 //可以不写类型, 由右边推算出
    sex := "" //省略var 用:代替
    sex = ""
    fmt.Println("age = ", age)
    fmt.Println("tmp = ", tmp)
    fmt.Println("num = ", num)
    fmt.Println("sex = ", sex)
    //批量定义
    var a, b, d int
    fmt.Println(a + b + d)

    var cc,dd,ee = 4, 3.5, "好的"
    fmt.Println(cc, dd, ee)

    //拋异常
    panic("ddd")
}

 

var和const :变量和常量的声明
var varName type 或者 varName : = value
package and import: 导入
func: 用于定义函数和方法
return :用于从函数返回
defer someCode :在函数退出之前执行
go : 用于并行
select 用于选择不同类型的通讯
interface 用于定义接口
struct 用于定义抽象数据类型
break、case、continue、for、fallthrough、else、if、switch、goto、default 流程控制
chan用于channel通讯
type用于声明自定义类型
map用于声明map类型数据
range用于读取slice、map、channel数据

posted on 2023-08-08 15:35  悉野  阅读(7)  评论(1编辑  收藏  举报