Go基礎知識-02 作用域 常量 變數 作用域(持續更新)

nonespace發表於2018-08-14

函式宣告和註釋

  1. 函式宣告 :func 函式名字(引數列表)(返回值列表){}
  2. 註釋,兩行註釋,單行註釋:// 多行 /**/
//函式舉例
func add(){}
func add(a int , b int){}
fun add(a int , b int)(int ,int){}
複製程式碼

常量

  1. 常量才有const 宣告,代表 只讀,不能賦值修改
  2. 智慧宣告布林,數字(int系列 float系列) complex 複數 string 舉例
const  name  = "huluwa"
const  number int64 = 5656
const  float float64 = 5656.466
//成組宣告
const (
a = 0
b = 1
c = 2
)
//也可以
const (
a = iota  自動累加
b    //1
c    //2
)

複製程式碼

變數

var 變數名 變數型別 var identifier type 舉例

var a int //預設0
	var b string //預設 ""
	var c bool  //m預設false
	var d int = 8 
	var hi = "hello World"

//函式體內可以使用
n :=45   //可以回自己識別型別
複製程式碼

值型別和引用型別

1.值型別:變數直接村處值,記憶體在棧中分配(int、float、bool、string以及陣列和struct) 2.引用型別變數儲存的是一個地址,記憶體通常在堆上分配,通過GC回收(指標、slice、map、chan)

 -  引用 ref 	⇒	地址 ⇒值
 - 值型別 var i =5   => i    ---> 5
複製程式碼

變數作用域

1.在函式內部宣告的變數叫做區域性變數,生命週期僅限於函式內部。

2.在函式外部宣告的變數叫做全域性變數,生命週期作用於整個包,如果是大寫的,
則作用於整個程式。
複製程式碼

資料型別和操作符

  • bool 只能存 true 和 false
	  var a bool
	  var a bool =  true
	  var a = true
複製程式碼
  • 相關操作符 ! ,&& ||
    var a bool = true
	var b bool
	fmt.Println(!a) //false
	fmt.Println(!b) //true
	fmt.Println(a&&b) //false
	fmt.Println(a||b) //true
複製程式碼
  • 數字型別,主要有int、int8、int16、int32、int64、uint8、uint16、uint32、uint64、float32、float64
  • 型別轉換,type(variable),比如:var a int=8; var b int32=int32(a)
  • 邏輯操作符: == 、!=、<、<=、>和 >=
   var a int = 10
     if ( a > 10 ) { 
        
      fmt.Println(a)
     }
複製程式碼
  • 數學操作符:+、-、*、/等等
package main
Import ”fmt”
func main() {
    var a int = 10
    var b = a + 10
} 
複製程式碼
  • 字元型別:var a byte
  • 字串型別: var str string
//字串表示兩種方式: 1)雙引號    2)``   (反引號)
package main
import “fmt”
func main() {
     var str = “hello world\n\n”
     var str2 = `hello \n \n \n
this is a test string
This is a test string too·`
fmt.Println(“str=“, str)
fmt.Println(“str2=“, str2)
} 
複製程式碼

相關文章