斷言
下面是例子**:
import
("fmt"
)func
main()
(name).(
string
) fmt.
println
(value)
fmt.
println
(ok)
}
注意:型別斷言的時候我們必須先轉換為介面型別
我們可以通過下面方式宣告:
type mystring =
string
這樣mystring
就是string
型別的別名型別
在go內建的基本型別中就存在兩個別名型別:byte是uint8的別名型別,而rune是int32的別名型別
而下面這種宣告方式:
type mystring string
這裡mystring和string就不是一種型別了,這種方式叫做對型別的再定義
我們可以把string是mystring的潛在型別
潛在型別的含義:某個型別在本質上是哪個型別,或者是哪個型別的集合。
如果兩個值的潛在型別相同,卻屬於不同的型別,它們之間是可以做型別轉換的。但是它們的值不能進行判斷等或比較,它們變數之間不能賦值
go基礎程式
package main 程式所屬包,必須位於 第一行 import 匯入依賴包 const 定義常量 var 全域性變數的宣告和賦值 type int 一般型別宣告 type struct 結構宣告 type inte ce 宣告介面 func 函式定義 func main package是最基本...
Go語言核心36講筆記 程式實體那些事
1 變數有兩種宣告方式 var name string 完整變數宣告 name yan 短變數宣告2 如果內層變數使用 去定義,會產生內部變數 但不影響外部變數 如果內層的賦值用 則會直接使用外部變數操作,會對外部變數造成修改 如果內層的賦值用 的時候不能加var,加了var還是新變數。func f...
python基礎補充
import random print random.choice range 10 和from random import choice print choice range 10 第一種方法 將模組的名字設定為乙個隱含在名字空間裡的全域性變數,這樣就好像訪問全域性屬性那樣訪問choice函式 第...