# 第一章 基础语言 #
> go语言的基础语法:变量
package main
import (
"fmt"
"math"
"math/cmplx"
)
/**
* 编译器自动匹配变量类型
* 在go语言中的只有包变量概念没有全局变量的概念
* 可以在声明变量时,采用小括号声明多个变量
*/
var (
aa = 3
ss = "kkk"
bb = true
)
/**
* 声明变量时的格式 : var 变量名 变量类型
* 在go语言中任何类型在未初始化时都对应一个零值
* 布尔类型是 false,整型是 0,字符串是 "",而指针,函数等值是nil(相当于java的null)
*?
func variableInitialize(){
var a int
var s string
fmt.Printf("%d %q\n", a, s )
}
/**
* 在go语言可以通过编译器自动推测变量类型
*/
func typeDeduction(){
var a, b, c, s = 3, 4, true, "def"
fmt.Println(a, b, c, s)
}
/**
* 在go语言的中的变量声明语法主要有以下三种
* var 变量名 变量类型 = 值
* var 变量 = 值
* 变量 := 值
*/
func variable(){
//1
var a int = 11
//2
var b = "string"
//3
c := true
fmt.Println(a, b, c)
}
> go语言基础语法:常量
/**
* 在go语言中,声明常量使用关键字consts
* 在go语言的类型转换中,没有隐式转换,只能强制类型转换
*/
func consts(){
const (
filename = "abc.txt"
a, b = 3, 4
)
var c int
c = int(math.Sqrt(a*a + b*b))
fmt.Println(filename, c)
}
> go语言基础语法:枚举
/**
* iota是golang语言的常量计数器
* 表示变量依次递增
*/
func enums(){
const (
cpp = 0
java = 1
python = 2
golang = 3
javascript = 4
)
const(
a = iota //a = 0
b //b = 1
c //c = 2
d //d = 3
e //e = 4
)
fmt.Println(cpp, java, python, golang, javascript)
fmt.Println(a, b, c, d, e)
}
> go语言基础语法:程序的入口
func main(){
fmt.Println("Hello world")
variableInitialize()
typeDeduction()
variable()
}
最后在go语言中,所有的变量都必须被使用,不然就编译报错。
> go语言的基础语法:变量
package main
import (
"fmt"
"math"
"math/cmplx"
)
/**
* 编译器自动匹配变量类型
* 在go语言中的只有包变量概念没有全局变量的概念
* 可以在声明变量时,采用小括号声明多个变量
*/
var (
aa = 3
ss = "kkk"
bb = true
)
/**
* 声明变量时的格式 : var 变量名 变量类型
* 在go语言中任何类型在未初始化时都对应一个零值
* 布尔类型是 false,整型是 0,字符串是 "",而指针,函数等值是nil(相当于java的null)
*?
func variableInitialize(){
var a int
var s string
fmt.Printf("%d %q\n", a, s )
}
/**
* 在go语言可以通过编译器自动推测变量类型
*/
func typeDeduction(){
var a, b, c, s = 3, 4, true, "def"
fmt.Println(a, b, c, s)
}
/**
* 在go语言的中的变量声明语法主要有以下三种
* var 变量名 变量类型 = 值
* var 变量 = 值
* 变量 := 值
*/
func variable(){
//1
var a int = 11
//2
var b = "string"
//3
c := true
fmt.Println(a, b, c)
}
> go语言基础语法:常量
/**
* 在go语言中,声明常量使用关键字consts
* 在go语言的类型转换中,没有隐式转换,只能强制类型转换
*/
func consts(){
const (
filename = "abc.txt"
a, b = 3, 4
)
var c int
c = int(math.Sqrt(a*a + b*b))
fmt.Println(filename, c)
}
> go语言基础语法:枚举
/**
* iota是golang语言的常量计数器
* 表示变量依次递增
*/
func enums(){
const (
cpp = 0
java = 1
python = 2
golang = 3
javascript = 4
)
const(
a = iota //a = 0
b //b = 1
c //c = 2
d //d = 3
e //e = 4
)
fmt.Println(cpp, java, python, golang, javascript)
fmt.Println(a, b, c, d, e)
}
> go语言基础语法:程序的入口
func main(){
fmt.Println("Hello world")
variableInitialize()
typeDeduction()
variable()
}
最后在go语言中,所有的变量都必须被使用,不然就编译报错。