复习函数和string类
string类重点概述:
/*
Go中的字符串是一个字节的切片
可以通过将其内容封装在""中来创建字符串。Go中的字符串是Unicode兼容的,并且是UTF-8编码的
字符串是一些字节的集合
语法:"",``
""
"a","b","中"
"abc","hello"
字符:-->对应的编码表中的编码
A-->65
B->66
字节:byte-->uint7
utf8
strconv:字符串和基本类型之间的转换、
string convert
*/
部分重要代码:
//显示变量类型,将整形变量变为二进制
s2:="100"
i2,err:=strconv.ParseInt(s2,2,64)
if err!=nil{
fmt.Println(err)
return
}
fmt.Printf("%T,%d\n",i2,i2)
ss2:=strconv.FormatInt(i2,10)
fmt.Printf("%T,%s\n",ss2,ss2)
s1:="helloworld"
//1.是否包含指定的内容-->bool
fmt.Println(strings.Contains(s1,"abc"))
//2.是否包含chars中任意一个字符即可
fmt.Println(strings.ContainsAny(s1,"abcd"))
//3.统计substr在str出现的次数
fmt.Println(strings.Count(s1,"llo"))
//4.以xxx开头,以xxx结尾
s2:="202109134课堂笔记.txt"
if strings.HasPrefix(s2,"20210913") {
fmt.Println("21年9月的文件" )
}
if strings.HasSuffix(s2,".txt"){
fmt.Println("文本文档")
}
//helloworld
fmt.Println(strings.Index(s1,"lloo"))//查找substr在s中的位置,如果不存在就返回-1
fmt.Println(strings.IndexAny(s1,"abcdh"))//查找char中的仍会以一个字符,出现在s中的位置
//字符串的拼接
ss1:=[]string{"abc","world","hello","ddd"}
s3:=strings.Join(ss1,"-")
fmt.Println(s3)
//切割
s4:="1233,456,788,556,77"
ss2:=strings.Split(s4,",")
for i:=0;i<len(ss2);i++{
fmt.Println(ss2)
}
//替换
//helloworld
s6:=strings.Replace(s1,"l","*",-1)
fmt.Println(s6)
s7:="hello World**123..."
fmt.Println(strings.ToLower(s7))
fmt.Println(strings.ToUpper(s7))
/*
截取字串
substring(start,end)-->subster
00*/
fmt.Println(s1)
s8:=s1[0:5]
fmt.Println(s8)
云原生开发 :开发环境构建
go安装
安装gvm版本管理工具
$ bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
$ gvm install go1.7
$ go version
安装构建工具
安装gb工具
$ go get github.com/constabulary/gb/...
$ mkdir src && mkdir src/someuser && mkdir src/someuser/gofirst # someuser是用户名称, gofirst是项目名称
编写代码
源码
//vi src/someuser/gofirst/main.go 源码
package main
import (
"fmt"
"github.com/tabalt/gracehttp"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "hello world")
})
err := gracehttp.ListenAndServe(":8080", nil)
if err != nil {
fmt.Println(err)
}
}
测试代码
//vi src/someuser/gofirst/main_test.go 测试代码
package main
import (
"errors"
"testing"
)
func Division(a, b float64) (float64, error) {
if b == 0 {
return 0, errors.New("除数不能为0")
}
return a / b, nil
}
func Test_Division_1(t *testing.T) {
if i, e := Division(6, 2); i != 3 || e != nil { //try a unit test on function
t.Error("除法函数测试没通过") // 如果不是如预期的那么就报错
} else {
t.Log("第一个测试通过了") //记录一些你期望记录的信息
}
}
安装glide包管理工具
$ curl https://glide.sh/get | sh
项目构建
目录结构
构建
配置文件gile.yml
项目源代码
云原生开发网上有关视频比较少,就大概了解了一下,这篇里面的代码是转载其他的博主。
转载于:https://my.oschina.net/jackywyz/blog/729571