自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 收藏
  • 关注

原创 strings.Cut 使用详解

特性说明官方支持Go 1.18+ 标准库,长期兼容核心优势更高效、更直观的单次字符串切割性能比 SplitN 快 2 倍,比正则快 80 倍内存效率零内存分配(相比 Split 的切片分配)使用场景键值对解析、简单文本分割、需要知道是否匹配的场景替代方案多分隔符用 Split;复杂模式用 regexp场景传统方法使用 Cut 的优势键值对解析更直观,避免切片越界头部信息提取代码更简洁流式数据处理正则表达式性能提升 10x+未知输入处理。

2025-04-06 14:00:00 972

原创 strings.Count 使用详解

特性说明官方支持Go 1.0+ 标准库,稳定可靠核心作用高效统计非重叠子串出现次数性能远超正则表达式,接近手动遍历适用场景固定子串频率统计、格式验证、内容分析代替方案重叠匹配需手动实现;复杂模式用 regexp场景推荐实现方式优势固定子串计数简洁高效,官方优化多模式并行统计bytes.Count + 手动遍历减少字符串重复解析大文件处理bufio.Scanner 分块读取避免内存溢出重叠子串统计手动滑动窗口算法满足特殊需求。

2025-04-06 09:00:00 510

原创 strings.ContainsRune 使用详解

特性说明官方支持Go 标准库函数,长期兼容核心作用高效检查字符串是否包含指定 Unicode 字符性能优于 ContainsAny 和 ContainsFunc,接近手动遍历使用场景精确匹配单个字符(如符号、汉字、控制字符等)替代方案多字符匹配用 ContainsAny;复杂逻辑用 ContainsFunc场景推荐实现方式优势精确单字符匹配strings.ContainsRune(s, '中')代码直观,官方优化多字符集合检查减少多次函数调用高频性能敏感。

2025-04-05 14:00:00 419

原创 strings.ContainsFunc 使用详解

特性说明官方支持Go 1.21+ 标准库函数,兼容性强核心作用通过自定义函数检查字符串中是否存在符合条件的字符性能优于正则表达式,略低于 ContainsAny (因函数调用开销)使用场景复杂字符条件匹配(如 Unicode 属性、动态规则、组合逻辑)替代方案简单字符集合用 ContainsAny;高性能场景手动遍历优化场景推荐实现方式优势简单字符集合最高性能Unicode 属性检查代码简洁动态条件组合自定义(func (rune) bool)最大灵活性高频调用。

2025-04-05 09:00:00 357

原创 strings.ContainsAny 使用详解

strings.ContainsAny 是 Go 中处理字符级匹配的高效工具,特别适合 输入校验、安全检查、文本分析等场景。在需要检查字符串是否包含多个可能字符之一时,优先使用它,而非正则表示或手动遍历

2025-04-04 14:00:00 892

原创 strings.Contains 使用详解

strings.Contains(s, substr string) bool 的作用是判断字符串 s 中是否包含子串 substr。若包含返回 true,否则返回 falsestrings.Contains 是 Go 中最常用的字符串操作之一,适用于大多数简单匹配场景。在现实项目中,合理使用它可以提高代码可读性和执行效率

2025-04-04 09:00:00 850

原创 strings.Compare 使用详解

Compare返回一个整数,按字典顺序比较两个字符串。如果a == b,结果将是0,如果a < b,结果将是-1,如果是> b,结果将是+1。当需要执行(与片)三方比较时,使用Compare。例如SortFunc)。使用内置的字符串比较操作符==、<、>等通常更清晰、更快。

2025-04-03 14:00:17 760

原创 strings.Clone 使用详解

strings.Clone 的存在是为了解决一个特定问题:切断对原始大内存块的引用。当子字符串来自大切片时,即使不再需要原数据,子字符串仍会阻止其被垃圾回收(GC)

2025-04-03 09:00:00 789

原创 MySQL事务隔离级别

事务的隔离级别是数据库管理系统中用于定义多个并发事务之间相互隔离程度的标准。它们决定了事务在并发执行时如何相互影响,以及哪些数据修改对其他事务是可见的。事务的隔离级别由低到高依次为...

2024-08-06 14:44:37 785

原创 查找算法:二分查找,golang实现

在实际场景中,选择合适的查找算法对于提高程序的效率和性能至关重要,本节课主要讲解"二分查找"的适用场景及代码实现。

2024-08-02 09:15:00 881

原创 查找算法:线性查找,golang实现

在实际场景中,选择合适的查找算法对于提高程序的效率和性能至关重要,本节课主要讲解"线性查找"的适用场景及代码实现。

2024-08-01 16:15:48 1409

原创 排序算法:归并排序,golang实现

在实际场景中,选择合适的排序算法对于提高程序的效率和性能至关重要,本节课主要讲解"归并排序"的适用场景及代码实现。

2024-08-01 09:15:00 1370

原创 排序算法:堆排序,golang实现

在实际场景中,选择合适的排序算法对于提高程序的效率和性能至关重要,本节课主要讲解"堆排序"的适用场景及代码实现。

2024-07-31 16:52:17 1668 2

原创 排序算法:快速排序,golang实现

在实际场景中,选择合适的排序算法对于提高程序的效率和性能至关重要,本节课主要讲解"快速排序"的适用场景及代码实现。

2024-07-31 13:34:33 1514 1

原创 排序算法:插入排序,golang实现

在实际场景中,选择合适的排序算法对于提高程序的效率和性能至关重要,本节课主要讲解"插入排序"的适用场景及代码实现。

2024-07-31 09:15:00 1068

原创 排序算法:选择排序,golang实现

在实际场景中,选择合适的排序算法对于提高程序的效率和性能至关重要,本节课主要讲解"选择排序"的适用场景及代码实现。

2024-07-30 19:30:13 870

原创 排序算法:冒泡排序,golang实现

在实际场景中,选择合适的排序算法对于提高程序的效率和性能至关重要,本节课主要讲解"冒泡排序"的适用场景及代码实现。

2024-07-30 17:31:02 1059 1

原创 golang使用RSA加密和解密

因为我们要读取 公钥 和 密钥 两个文件,所以避免重复的代码,我们封装了这么个方法,避免重复的代码。如果没有公钥和密钥,可以先看看我上一篇文章。以上,我们就得到了加密后的数据。生成RSA公钥和密钥。

2024-06-28 17:32:38 1705

原创 golang生成RSA公钥和密钥

RSA生成的公钥和私钥保存为.key和.pem格式的文件,主要是出于可读性和安全性的考虑。RSA公钥和私钥的原始数据通常是二进制格式,对于人类来说直接阅读和理解这些二进制数据是非常困难的。为了提高可读性,这些二进制数据通常会被转换为Base64编码的文本格式。Base64编码是一种用64个可打印字符来表示二进制数据的方法,它可以将二进制数据转换为ASCII字符串格式,从而便于人类阅读和理解。

2024-06-28 16:44:28 1247

原创 session是什么,cookie是什么,它们有什么区别

需要注意的是,虽然session提供了许多有用的功能,但也可能带来一些潜在的问题。例如:如果服务器没有正确管理会话数据,可能会导致内存泄漏或性能问题。此外,如果会话标识符被泄露,攻击者可能会利用它来窃取用户的敏感信息或执行其他恶意操作。因为,在使用session时,需要采取适当的安全措施来保护用户的隐私和数据安全。综上所述,cookie是一种用于Web开发中跟踪和识别用户状态的重要机制,它通过存储用户本地计算机上的小型文本文件来实现这一功能。

2024-06-14 09:16:20 998

原创 TCP是什么、UDP是什么,它们有什么区别

TCP是互联网上广泛使用的协议,它为各种应用层协议(如HTTP、FTP、SMTP等)提供了可靠的、基于连接的传输服务。在大多数情况下,当我们谈论基于网络的通信时,所使用的协议栈中的传输层协议就是TCP。总的来说,UDP是一种简单、高效的传输层协议,适用于对实时性要求较高、但对数据可靠性要求不高的应用场景。然后,对于需要可靠传输的场景,还是建议使用TCP协议。

2024-06-13 16:53:51 20978

原创 go语言,拼接字符串有哪些方式

【代码】go语言,拼接字符串有哪些方式。使用加号"+"、使用fmt.Sprintf、使用strings.Join、使用strings.Builder、使用bytes.Buffer...

2024-06-12 16:10:20 848

原创 linux CentOs 安装docker 推荐生产环境使用

linux CentOs上安装docker,超完整超详细,推荐生产环境使用

2024-02-21 13:55:29 1900

原创 docker部署go gin框架 Linux环境

Linux 环境下 docker 部署 go gin 详细步骤

2023-12-13 13:51:14 1464

原创 docker部署go gin框架 Windows环境

Windows 环境下 docker 部署 go gin 详细步骤

2023-12-12 17:46:53 1572

原创 mysql 计算两点之间距离

mysql 计算两点之间距离,轻松实现类似美团外卖,附近商家,距离最近的商家

2023-08-28 18:25:20 915

原创 docker cURL error 6: Could not resolve host

cURL error 6: Could not resolve host docker 环境下解决方案

2023-08-18 18:14:34 3079

原创 docker 安装 字体文件

docker 安装 字体文件

2023-08-01 13:57:07 1741

原创 go env 配置(环境变量)说明

一篇带你了解 go 环境变量(配置信息)

2023-07-31 14:12:44 5032

原创 docker安装php GD库

docker安装php GD库,超详细,各种步骤时出现的问题及解决方法

2023-06-30 17:24:09 3581

原创 docker安装golang

最近玩 docker 比较多,试试安装 golang。第一步:先看一下镜像;第二步:下载镜像;第三步:进一步查看 golang 是不是我们指定安装的版本;第四步:运行容器

2023-06-05 19:00:00 1403 1

原创 docker安装php

docker安装php

2023-05-31 17:50:06 1905 1

原创 mysql8.0 修改密码

mysql8.0 修改密码,无论是内网还是外网,都可以使用我们刚刚设置的密码进行访问

2023-05-26 16:54:37 1109

原创 linux CentOs 安装 docker 推荐测试和开发环境使用

linux CentOs 安装 docker,在测试和开发环境中,可以使用自动化的方便脚本来安装Docker

2023-05-25 14:44:48 790

原创 php8 match

php8 新特性:match

2023-05-24 10:20:05 800

原创 Call to undefined function bcadd()

docker Call to undefined function bcadd()、bcdiv()、bcmul()、bcsub()的处理方法

2023-05-18 12:11:05 1447 2

原创 docker Connection refused

docker Connection refused 连接被拒绝的解决方法

2023-05-16 15:23:40 3040

原创 docker could not find driver

docker容器中,php和mysql互动时,解决出现could not find driver

2023-05-16 14:53:27 1259

原创 -bash: docker-compose: command not found

-bash: docker-compose: command not found超详细处理方法

2023-05-16 10:25:19 1921

原创 README.md 语法

readme.md语法大全

2023-05-13 17:51:58 837

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除