格式化輸出至終端 使用fmt.Printf()
調用格式化輸出至終端
一般類型 %v
:以原樣打印,輸出相應值的默認格式 —> 不知道如何輸出也可用%T
:打印相應值的類型(type)%%
:打印出百分號
bool類型 %t
:打印true或是false —> 一般也可用%v
完成
整數 %b
:二進制表示%d
:十進制表示%o
:八進制表示%c
:相應的Unicode碼所表示的字符
浮點數及其複合構成 %e
:科學記號表示,-1234.56e+78%E
:科學記號表示,-1234.56E+78%f
:有小數點而無指數表示,123.456
字符串與字符切片 %s
:打印字符串%q
:打印字符串時,兩邊也會加入雙引號%x
:十六進制,小寫字母%X
:十六進制,大寫字母
指針 %p
:打印內存地址,時溜進制表示,前綴為0x
格式化輸出到字符串 使用fmt.Sprintf()
調用格式化輸出至字符串中可用於數字類型轉換成字符串類型 與前一節使用方法一樣,只是返回的為字符串類型
example 1 2 3 4 5 6 7 8 9 10 11 12 13 14 package mainimport "fmt" func main () { var integer int = 10000 var float_num float64 = 0.0005 integer_str := fmt.Sprintf("%d" ,integer) float_num_str := fmt.Sprintf("%f" ,float_num) fmt.Printf("integer_str type:%T,Value:%s\n" ,integer_str,integer_str) fmt.Printf("float_num_str type:%T,Value:%s\n" ,float_num_str,float_num_str) }
result 1 2 integer_str type:string,Value:10000 float_num_str type:string,Value:0.000500
拼接字符串 使用運算符拼接 字符串之間可用運算符+
拼接
example 1 2 3 4 5 6 7 8 9 10 11 package mainimport "fmt" func main () { var a string = "Hello" b := "World" str := a + " " + b fmt.Println(str) }
result
使用輸出格式化拼接 使用fmt.Sprintf()
拼接
example 1 2 3 4 5 6 7 8 9 10 11 package mainimport "fmt" func main () { var a string = "Hello" b := "World" str := fmt.Sprintf("%s %s" ,a,b) fmt.Println(str) }
result
字符串長度 使用len()
方法求字符串長度
example 1 2 3 4 5 6 7 8 9 package mainimport "fmt" func main () { var a = "Hello World" length_a := len (a) fmt.Printf("string a length is %d" ,length_a) }
result
字符串切片 擷取字符串中想要的部分
example 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 package mainimport "fmt" func main () { var a string = "Hello new World" Hello_str := a[:5 ] new_str := a[6 :9 ] World_str := a[10 :] fmt.Println(Hello_str) fmt.Println(new_str) fmt.Println(World_str) }
[1] 若取值index從0開始,可省略不寫 [2] 取值:
左邊為要開始取值的index,右邊為取值結束的index+1 [3] 若取值結束需取到最後:
右邊可省略不寫
result
字符串反轉 example 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 package mainimport "fmt" func string_reverse (a string ) string { var result string for i:=0 ;i<len (a);i++{ pick := a[len (a)-1 -i:len (a)-i] result += pick } return result } func main () { var a string = "Hello World" result := string_reverse(a) fmt.Println(result) }
example 2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 package mainimport "fmt" func string_reverse (str string ) string { var result string strLen := len (str) for i:=0 ;i<strLen;i++{ result += fmt.Sprintf("%c" ,str[len (str)-i-1 ]) } return result } func main () { var a string = "Hello World" result := string_reverse(a) fmt.Println(result) }
result