ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Go语言学习之旅十八--复习函数和string类 云原生开发环境搭载

2021-09-19 16:05:42  阅读:132  来源: 互联网

标签:string err -- fmt Println Go strings s1


复习函数和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
在这里插入图片描述
项目源代码

标签:string,err,--,fmt,Println,Go,strings,s1
来源: https://blog.csdn.net/m0_52774518/article/details/120380845

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有