布爾類型 【1】布爾類型也叫bool類型,bool類型數據隻允許取值true和false
【2】布爾類型占1個字節。
【3】布爾類型适于邏輯運算,一般用于程序流程控制
【4】代碼:
package main import fmt func main(){ //測試布爾類型的數值: var flag01 bool = true fmt.Println(flag01) var flag02 bool = false fmt.Println(flag02) var flag03 bool = 5 9 fmt.Println(flag03) }
字符串類型 【1】介紹:
字符串就是一串固定長度的字符連接起來的字符序列。
【2】字符串的使用:
package main import fmt func main(){ //1.定義一個字符串: var s1 string = 你好全面擁抱Golang fmt.Println(s1) //2.字符串是不可變的:指的是字符串一旦定義好,其中的字符的值不能改變 var s2 string = abc // s2 = def // s2[1] = fmt.Println(s2) //3.字符串的表示形式: //(1)如果字符串中沒有特殊字符,字符串的表示形式用雙引号 //var s3 string = asdfasdfasdf //(2)如果字符串中有特殊字符,字符串的表示形式用反引号 `` var s4 string = ` package main import fmt func main(){ //測試布爾類型的數值: var flag01 bool = true fmt.Println(flag01) var flag02 bool = false fmt.Println(flag02) var flag03 bool = 5 9 fmt.Println(flag03) } ` fmt.Println(s4) //4.字符串的拼接效果: var s5 string = abc def s5 = hijk fmt.Println(s5) //當一個字符串過長的時候:注意: 保留在上一行的最後 var s6 string = abc def abc def abc def abc defabc def abc defabc def abc def abc def abc defabc def abc defabc def abc defabc def abc defabc def abc defabc def fmt.Println(s6) }
基本數據類型的默認值 【1】在Golang中數據類型都有一個默認值,當程序員沒有賦值時,就會保留默認值(默認值又叫零值)。
【2】代碼驗證:
package main import fmt func main() { var a int var b float32 var c float64 var d bool var e string fmt.Println(a) fmt.Println(b) fmt.Println(c) fmt.Println(d) fmt.Println(e) }
基本數據類型之間的轉換 【1】Go在不同類型的變量之間賦值時需要顯式轉換,并且隻有顯式轉換(強制轉換)。
【2】語法:
表達式T(v)将值v轉換為類型T
T : 就是數據類型
v : 就是需要轉換的變量
【3】案例展示:
package main import fmt func main(){ //進行類型轉換: var n1 int = 100 // 在這裡自動轉換不好使,比如顯式轉換 // var n2 float32 = n1 fmt.Println(n1) //fmt.Println(n2) var n2 float32 = float32(n1) fmt.Println(n2) //注意:n1的類型其實還是int類型,隻是将n1的值100轉為了float32而已,n1還是int的類型 fmt.Printf(,n1) //int fmt.Println() //将int64轉為int8的時候,編譯不會出錯的,但是會數據的溢出 var n3 int64 = 888888 var n4 int8 = int8(n3) fmt.Println(n4)//56 var n5 int32 = 12 var n6 int64 = int64(n5) 30 //一定要匹配=左右的數據類型 fmt.Println(n5) fmt.Println(n6) var n7 int64 = 12 var n8 int8 = int8(n7) 127 //編譯通過,但是結果可能會溢出 //var n9 int8 = int8(n7) 128 //編譯不會通過 fmt.Println(n8) //fmt.Println(n9) }
基本數據類型轉string 【1】基本數據類型和string的轉換介紹
在程序開發中,我們經常需要将基本數據類型轉成string類型。或者将string類型轉成基本數據類型。
【2】基本類型轉string類型
方式1:fmt.Sprintf(%參數,表達式) ---》 重點練習這個,推薦方式
方式2:使用strconv包的函數
【3】代碼測試:
方式一:
package main import fmt func main(){ var n1 int = 19 var n2 float32 = 4.78 var n3 bool = false var n4 byte = var s1 string = fmt.Sprintf(,n1) fmt.Printf(s1對應的類型是:%T ,s1 = %q \n,s1, s1) var s2 string = fmt.Sprintf(,n2) fmt.Printf(s2對應的類型是:%T ,s2 = %q \n,s2, s2) var s3 string = fmt.Sprintf(,n3) fmt.Printf(s3對應的類型是:%T ,s3 = %q \n,s3, s3) var s4 string = fmt.Sprintf(,n4) fmt.Printf(s4對應的類型是:%T ,s4 = %q \n,s4, s4) }
方式二:
package main import( fmt strconv ) func main(){ var n1 int = 18 var s1 string = strconv.FormatInt(int64(n1),10) //參數:第一個參數必須轉為int64類型 ,第二個參數指定字面值的進制形式為十進制 fmt.Printf(s1對應的類型是:%T ,s1 = %q \n,s1, s1) var n2 float64 = 4.29 var s2 string = strconv.FormatFloat(n2,,9,64) //第二個參數:(-ddd.dddd) 第三個參數:9 保留小數點後面9位 第四個參數:表示這個小數是float64類型 fmt.Printf(s2對應的類型是:%T ,s2 = %q \n,s2, s2) var n3 bool = true var s3 string = strconv.FormatBool(n3) fmt.Printf(s3對應的類型是:%T ,s3 = %q \n,s3, s3) }
string轉為基本數據類型 【1】string類型轉基本類型
方式:使用strconv包的函數
【2】測試:
package main import( fmt strconv ) func main(){ //string--bool var s1 string = true var b bool //ParseBool這個函數的返回值有兩個:(value bool, err error) //value就是我們得到的布爾類型的數據,err出現的錯誤 //我們隻關注得到的布爾類型的數據,err可以用_直接忽略 b , _ = strconv.ParseBool(s1) fmt.Printf(b的類型是:%T,b=%v \n,b,b) //string---》int64 var s2 string = var num1 int64 num1,_ = strconv.ParseInt(s2,10,64) fmt.Printf(num1的類型是:%T,num1=%v \n,num1,num1) //string--float32/float64 var s3 string = 3.14 var f1 float64 f1,_ = strconv.ParseFloat(s3,64) fmt.Printf(f1的類型是:%T,f1=%v \n,f1,f1) //注意:string向基本數據類型轉換的時候,一定要确保string類型能夠轉成有效的數據類型,否則最後得到的結果就是按照對應類型的默認值輸出 var s4 string = golang var b1 bool b1 , _ = strconv.ParseBool(s4) fmt.Printf(b1的類型是:%T,b1=%v \n,b1,b1) var s5 string = golang var num2 int64 num2,_ = strconv.ParseInt(s5,10,64) fmt.Printf(num2的類型是:%T,num2=%v \n,num2,num2) }
參考源碼:htt
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!