说明
前面都比较简单,没有怎么去记,从string开始记录
一、基础
1.string
package main
import (
"fmt"
"strings"
)
// string
func main() {
s := "Hello 刘泓宾" //字符串
//单独的字母,汉字,符号表示一个字符
// c1 := 'h' //这表示字符
// c2 := '1'
// c3 := '刘'
//字节:1字节=8bit(8个二进制位)
fmt.Println(s)
// fmt.Print(c1, "\n")
// fmt.Print(c2, "\n")
// fmt.Print(c3, "\n")
var path = "\"F:\\golang\\bilibili\\src\\string\""
fmt.Println(path)
// 反引号
var path2 = `F:\golang\bilibili\src\int\main.go`
fmt.Println(path2)
// 字符串拼接
name := "刘泓宾"
world := "想赚钱"
ss := name + world
fmt.Println(name + world)
fmt.Println(ss)
ss2 := fmt.Sprintf("%s%s", name, world)
fmt.Println(ss2)
// 分割
ret := strings.Split(path2, "\\")
fmt.Println(ret) //[F: golang bilibili src int main.go]
//判断包含
fmt.Println(strings.Contains(ss, "刘泓宾")) //true
fmt.Println(strings.Contains(ss, "鲁敏")) //false
//判断前缀
fmt.Println(strings.HasPrefix(ss, "刘泓宾")) //true
//判断后缀
fmt.Println(strings.HasSuffix(ss, "赚钱")) //true
// 查看字符串位于哪位
s4 := "abcdefg"
//正数
fmt.Println(strings.Index(s4, "c")) //2
// 倒数
fmt.Println(strings.LastIndex(s4, "d")) //3
// 拼接
// ret [F: golang bilibili src int main.go]
fmt.Println(strings.Join(ret, "+")) //通过+号连接起来,输出:F:+golang+bilibili+src+int+main.go
}
2.fmt
输出
import "fmt"
fmt.Print() //输出没有换行
fmt.Println() //输出后换行
fmt.Printf() //格式化输出
格式化打印占位符
%v 原样输出
%T 打印类型
%t bool类型
%s 字符串
%f 浮点
%d 10进制
%o 8进制
%x 16进制 0-9 a-f
%X 16进制 0-9 A-F
%b 二进制数
%c 打印字符
%p 打印地址
内置函数
内置函数 | 介绍 |
---|---|
close | 主要用来关闭channel |
len | 用来求长度,比如string、array、slice、map、channel |
new | 用来分配内存,主要用来分配值类型,比如int、struct。返回的是指针 |
make | 用来分配内存,主要用来分配引用类型,比如chan、map、slice |
append | 用来追加元素到数组、slice中 |
panic和recover | 用来做错误处理 |