golang入門實例分析(一)

1.導入不同文件夾下的函數

--文件結構
test
--test.go
math
--math1.go
//test.go
package main
import (
	"fmt"
	mathClass "testgo/math"
)
func main() {
	fmt.Println("Hello World")
	fmt.Println(mathClass.Add(1, 2))
}
//math1.go
package mathClass
func Add(x,y int) int {
	return x+y;
}

分析:同一個文件夾的go文件,它們的package必須相同,且不能import其他文件夾的main包

2.各個數據類型的默認值

var a = ""
fmt.Println(a)   //結果爲""
var b int
fmt.Println(b)   //結果爲0
var c bool
fmt.Println(c)   //結果爲false
var d *int
fmt.Println(d)   //結果爲<nil>
var e []int
fmt.Println(e)   //結果爲[]
var f map[string]int
fmt.Println(f)   //結果爲map[]
var g chan int
fmt.Println(g)   //結果爲<nil>
var h func(string) int
fmt.Println(h)   //結果爲<nil>
var i error
fmt.Println(i)   //結果爲<nil>
var j float64
fmt.Println(j)   //結果爲0

3.:=的用法

f:="asd";//var f string = "asd"
fmt.Println(f);

分析::=是定義並賦值,不需要在前面加var,且只能在函數體內使用,不能作爲全局變量

4.聲明瞭但又不使用的變量,編譯不通過

5.函數可以有多個返回值

func main() {
	_,numb,strs:=numbers();//只獲取函數後兩個返回值
	fmt.Println(numb,strs);
}
func numbers()(int,int,string){
	a,b,c:=1,2,"123"
	return a,b,c;
}

6.const常量與iota變量的使用

func main() {
	const aa string = "asd"  //常量的定義並賦值
	fmt.Println(aa);

	const(
		a=iota  //a=0
		b		//b=1
		c		//c=2
		d="ha"	//d="ha"
		e		//e="ha"
		f=100	//f=100
		g		//g=100
		h=iota	//h=7
		i		//i=8
	)
	fmt.Println(a,b,c,d,e,f,g,h,i);
}

分析:當const中有的變量沒有賦值時,默認等同於上面的變量,iota隨着變量的增加不斷+1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章