在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1、Go语言fmt包详解 fmt.Println() ###常用打印
fmt.Print()
fmt.Printf() ###格式化
fmt.Sprintf() ###字符串拼接
a)普通占位符 占位符 说明 举例 %v 以默认的方式打印变量的值 fmt.Printf("%v", site) %+v 在打印结构体时,会添加字段名 fmt.Printf("%+v", site) %#v 在打印结构体时,会添加字段名和包名 fmt.Printf("%#v", site) %T 打印变量的类型 fmt.Printf("%T", site) %% 字面上的百分号,并非值的占位符 fmt.Printf("%%") %t 打印true或false fmt.Printf("%t", true) %s 输出字符串表示(string类型或[]byte) fmt.Printf("%s", []byte("oldboy")) %d 表示为十进制 fmt.Printf("%d", 0x12) %o 表示为八进制 fmt.Printf("%d", 10) %x 十六进制表示,字母形式为小写 a-f fmt.Printf("%x", 13) %p 十六进制表示,前缀 0x fmt.Printf("%p", &site) ##指针
str := "Go语言字符串\n不能跨行赋值" 2、反引号,用来创建原生的字符串字面量 ,这些字符串可能由多行组成(不支持任何转义序列), str := `Go原生原格式字符串
可以跨行`
b) 字符串拼接 str := "hello" + "girl" 2、使用 fmt.Sprintf() 拼接 str := fmt.Sprintf("%s,%s", "hello", "girl") 3、使用 strings.Join() 拼接 str := strings.Join([]string{"hello", "girl"}, ",") 4、使用 buffer.WriteString() 拼接 var buffer bytes.Buffer buffer.WriteString("hello") buffer.WriteString(",") buffer.WriteString("girl") str := buffer.String() 总结: length := len([]rune(str)) 2、字符串切片 str := str[0:5] 3、判断给定字符串s中是否包含子串substr, 找到返回true, 找不到返回false strings.Contains("oldboy", "boy") 4、在字符串s中查找子串所在的位置, 返回位置值, 找不到返回-1 strings.Index("oldboy", "boy") 5、统计给定子串sep的出现次数, sep为空时, 返回字符串的长度 + 1 strings.Count("oldboy", "o") 6、重复s字符串count次, 最后返回新生成的重复的字符串 strings.Repeat("嘀嗒", 4) 7、在s字符串中, 把old字符串替换为new字符串,n表示替换的次数,如果n<0会替换所有old子串。 strings.Replace("luck luck luck", "k", "ky", 2) 8、删除在s字符串的头部和尾部中由cutset指定的字符, 并返回删除后的字符串 strings.Trim(" oldboy ", " ") 9、大小写转换 strings.Title("It is never too late to learn.") //转为标题 strings.ToLower("It Is Never Too Late To Learn.") //转为小写 strings.ToUpper("It is never too late to learn.") //转为大写 10、字符串前缀后缀 strings.HasPrefix("oldboy", "old") //前缀判断 strings.HasSuffix("oldboy", "boy") //后缀判断 11、字符串分割 strings.Split("Linux,Python,Golang,Java", ",")
var array [5]int 2) 声明一个长度为5的整数数组并初始化 var array [5]int = [5]int{1, 2, 3, 4, 5} 3) 如果你把长度写成…,Go编译器将会根据你的元素来推导出长度 array := [...]int{1, 2, 3, 4, 5} 4) 声明一个长度为5的整数数组,为索引为1和3的位置指定元素初始化,剩余元素为该元素类型的默认值 array := [5]int{1: 1, 3: 3} 2、多维数组定义 var array [3][6]int 2) 使用数组字面值声明并初始化 array := [4][2]int{{10, 11}, {20, 21}, {30, 31}, {40, 41}} 3) 指定外部数组索引位置初始化 array := [4][2]int{1: {20, 21}, 3: {40, 41}} 4) 同时指定内外部数组索引位置初始化 array := [4][2]int{1: {20, 21}, 3: {40, 41}} 注意:使用内置函数len()和cap()返回数组长度和数组容量,且其余操作和其他语言一直,通过索引增删改查 var str string = "oldboy" result := []byte(str) 2、32位整形转字节 var x int32 x = 100 bytesBuffer := bytes.NewBuffer([]byte{}) binary.Write(bytesBuffer, binary.BigEndian, x) result := bytesBuffer.Bytes() 类型转换详细查阅:http://docscn.studygolang.com/pkg/strconv/
|
请发表评论