高密住房和城乡建设局网站许昌seo公司
文章目录
- 一、Strings包
 - 字符串处理包定义
 - Strings包的基本用法
 - Strconv包中常用函数
 
- 二、Time包
 - 三、Math包
 - math包概述
 - 使用math包
 
- 四、随机数包(rand)
 
一、Strings包
字符串处理包定义
Strings包简介:
一般编程语言包含的字符串处理库功能区别不是很大,并且高级的语言提供的函数会更多,掌握基本的字符串处理函数后,更丰富的字符串处理函数都是通过封装基本的处理函数实现。因此,熟悉go strings包后基本就能借此封装,应用于特定场景的字符串处理函数。而strconv包实现了字符串与其它基本数据类型之间的类型转换。
Strings包的基本用法
Go语言常用strings网址

Go语言中的字符串、字节、符文和字符
 
打印字符串
 

string包中的字符串处理函数:
- 检索字符串
 
常用的字符串检索方法如图所示
 
- 分割字符串
 
分割字符串常用的方法如表所示
 
- 大小写转换
 
常用的大小写转换方法如表所示
 
- 修剪字符串
 
修剪字符串常用的方法如表所示
 
- 比较字符串
 
比较字符串常用的方法如表所示

 示例:
 
Strconv包中常用函数
- Parse类函数:
 
常用的Parse类函数(将字符串转换为其他类型)如表所示
 
- Format类函数
 
常用的Format类函数(将其他类型格式化为字符串)如表所示
 
示例:
package mainimport ("fmt""strconv"
)func main() {str := "123"num, err := strconv.Atoi(str)if err != nil {fmt.Println(err)} else {fmt.Println(num) }
} 

二、Time包
Go语言Time网址
 
Time包的定义:
- time包提供了时间的显示和测量用的函数。日历的计算采用的是公历
 
Time包的常用函数
 time包中核心方法如表所示
 


 
示例:
package mainimport ("fmt""time"
)
func main() {// 获取当前时间now := time.Now()fmt.Println(now)fmt.Println(now.Format("2006-01-02 15:04:05")) // 格式化时间t, _ := time.Parse("2006-01-02", "2023-10-01")  // 解析时间fmt.Println(t)// 计算时间差duration := now.Sub(t)fmt.Println(duration.Hours()) // 输出小时数
} 

三、Math包
math包概述
Go语言math包

使用math包
- math包提供了基本的数学常数和数学函数,使用时需要import “math”
 
math包中核心方法如表所示


 示例:
package mainimport ("fmt""math"
)func main() {// 取绝对值fmt.Println(math.Abs(-3.5)) // 3.5// 幂运算fmt.Println(math.Pow(2, 3)) // 8// 平方根fmt.Println(math.Sqrt(16)) // 4
} 

四、随机数包(rand)
随机数包(rand/math)使用时需要import “math/rand”,rand包实现了伪随机数生成器。随机数从资源生成。包水平的函数都使用的默认的公共资源。该资源会在程序每次运行时都产生确定的序列。如果需要每次运行产生不同的序列,应使用Seed函数进行初始化。默认资源可以安全的用于多协程并发。
Go语言随机数

Rand包中核心方法如表所示

获取随机数的几种方法:
- 通过默认随机数种子获取随机数,具体方法如图所示:

 - 总是生成固定的随机数。默认情况下,随机数种子都是1。seed是一个64位整数。
 - 动态随机数种子生成随机资源,实例随机对象来获取随机数,具体方法如下所示。
 

- 简写形式:动态变化随机数种子来获取随机数,具体方法如下所示。
 - (1)获取整型随机数[0,10]
 

- (2)获取浮点型0.0至1.0之间的随机数
 

- (3) 获取两数之间随机数[m , n]
 

 示例:
package mainimport ("fmt""math/rand""time"
)
func main() {// 使用当前时间初始化随机种子rand.Seed(time.Now().UnixNano())// 生成随机整数fmt.Println(rand.Intn(10)) // 生成0到9的随机数// 生成0到1之间的随机浮点数fmt.Println(rand.Float64())// 生成指定范围的随机整数fmt.Println(rand.Intn(7) + 5) // 生成5到11之间的随机数
} 

