当前位置: 首页 > article >正文

Go语言的常用内置函数

文章目录

  • 一、Strings包
      • 字符串处理包定义
      • Strings包的基本用法
      • Strconv包中常用函数
  • 二、Time包
  • 三、Math包
      • math包概述
      • 使用math包
  • 四、随机数包(rand)

一、Strings包

字符串处理包定义

Strings包简介:

一般编程语言包含的字符串处理库功能区别不是很大,并且高级的语言提供的函数会更多,掌握基本的字符串处理函数后,更丰富的字符串处理函数都是通过封装基本的处理函数实现。因此,熟悉go strings包后基本就能借此封装,应用于特定场景的字符串处理函数。而strconv包实现了字符串与其它基本数据类型之间的类型转换。

Strings包的基本用法

Go语言常用strings网址

在这里插入图片描述

Go语言中的字符串、字节、符文和字符
在这里插入图片描述

打印字符串
在这里插入图片描述在这里插入图片描述

string包中的字符串处理函数:

  • 检索字符串

常用的字符串检索方法如图所示
在这里插入图片描述

  • 分割字符串

分割字符串常用的方法如表所示
在这里插入图片描述

  • 大小写转换

常用的大小写转换方法如表所示
在这里插入图片描述

  • 修剪字符串

修剪字符串常用的方法如表所示
在这里插入图片描述

  • 比较字符串

比较字符串常用的方法如表所示

在这里插入图片描述
示例:
在这里插入图片描述

Strconv包中常用函数

  • Parse类函数:

常用的Parse类函数(将字符串转换为其他类型)如表所示
在这里插入图片描述

  • Format类函数

常用的Format类函数(将其他类型格式化为字符串)如表所示
在这里插入图片描述

示例:

package main

import (
	"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 main

import (
	"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 main

import (
    "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 main

import (
	"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之间的随机数
}

在这里插入图片描述


http://www.kler.cn/a/384991.html

相关文章:

  • JavaWeb开发9
  • C语言学习--const修饰符的作用,如何强制修改const定义的对象内容
  • 力扣排序455题(分发饼干)
  • STM32外设之SPI的介绍
  • NetCore使用Aop和内存缓存对接口、方法进行数据缓存
  • 【ddnsgo+ipv6】
  • Webserver(4.9)本地套接字的通信
  • Mysql常用语法一篇文章速成
  • TCP/IP协议介绍
  • RAG(检索增强生成)的实现流程;RAG怎么实现检索增强的
  • 大型语言模型(LLM)的小型化研究进展
  • [MySQL]DQL语句(二)
  • 注册了个域名Wordpress.cn.com
  • 计算机网络——HTTP篇
  • 计算机网络——SDN
  • aosp安卓15新特性dump的wms窗口层级树优化的更加美观
  • HBuilderX运行微信小程序,编译的文件在哪,怎么运行
  • 【西藏】《西藏自治区本级政务信息化项目建设和运维费用预算支出标准》(藏财建〔2024〕68号)-省市费用标准解读系列08
  • 一文读懂| 自注意力与交叉注意力机制在计算机视觉中作用与基本原理
  • 数据挖掘(八)
  • 论文阅读笔记:DRCT: Saving Image Super-Resolution away from Information Bottleneck
  • Windows磁盘管理右键无法删除卷,右键只有帮助选项按钮
  • C++11的简介
  • 第8章 利用CSS制作导航菜单作业
  • JAVA:数据库(mysql)编程初步学习\JDBC(附带项目文件)
  • Maven随笔