- 函数是 Go 语言的一等公民,如何利用好其高级用法特性,是一件值得思考和实践的事情 背景在日常业务开发中,对于一些表的不同字段做筛选查询,是基础的功能。而且大部分可能是在根据不同条件去查询。就像这样type XXXRepo interface { GetXXXByIdOrName(ctx context.Context, id int, name string) (o []admin.XXX... 函数是 Go 语言的一等公民,如何利用好其高级用法特性,是一件值得思考和实践的事情 背景在日常业务开发中,对于一些表的不同字段做筛选查询,是基础的功能。而且大部分可能是在根据不同条件去查询。就像这样type XXXRepo interface { GetXXXByIdOrName(ctx context.Context, id int, name string) (o []admin.XXX...
- 概述Go 语言中数组在初始化之后大小就无法改变,存储元素类型相同、但是大小不同的数组类型在 Go 语言看来也是完全不同的,只有两个条件都相同才是同一个类型。 初始化arr1 := [3]int{1, 2, 3}arr2 := [...]int{1, 2, 3} 一维数组// 全局: var arr0 [5]int = [5]int{1, 2, 3} var arr1 = [5]... 概述Go 语言中数组在初始化之后大小就无法改变,存储元素类型相同、但是大小不同的数组类型在 Go 语言看来也是完全不同的,只有两个条件都相同才是同一个类型。 初始化arr1 := [3]int{1, 2, 3}arr2 := [...]int{1, 2, 3} 一维数组// 全局: var arr0 [5]int = [5]int{1, 2, 3} var arr1 = [5]...
- go坑 1. for rangefor-range其实是语法糖,内部调用还是for循环,初始化会拷贝带遍历的列表(如array,slice,map),然后每次遍历的v都是对同一个元素的遍历赋值。 也就是说如果直接对v取地址,最终只会拿到一个地址,而对应的值就是最后遍历的那个元素所附给v的值。对应伪代码如下:package mainimport "fmt"func main() { ... go坑 1. for rangefor-range其实是语法糖,内部调用还是for循环,初始化会拷贝带遍历的列表(如array,slice,map),然后每次遍历的v都是对同一个元素的遍历赋值。 也就是说如果直接对v取地址,最终只会拿到一个地址,而对应的值就是最后遍历的那个元素所附给v的值。对应伪代码如下:package mainimport "fmt"func main() { ...
- 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 . 和 * 的正则表达式匹配。 . 匹配任意单个字符 * 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 . 和 * 的正则表达式匹配。 . 匹配任意单个字符 * 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。
- # Go学习(1) 前言Go语言(或 Golang)起源于 2007 年,并在 2009 年正式对外发布。Go 是非常年轻的一门语言,它的主要目标是“兼具Python等动态语言的开发速度和C/C++等编译型语言的性能与安全性”。Go语言近些年来比较热火,饶有兴趣的开始接触了解,配置环境,编写运行第一个程序。 一、创建项目注:本文用的GoLand版本为官网最新版Version: 2021.2... # Go学习(1) 前言Go语言(或 Golang)起源于 2007 年,并在 2009 年正式对外发布。Go 是非常年轻的一门语言,它的主要目标是“兼具Python等动态语言的开发速度和C/C++等编译型语言的性能与安全性”。Go语言近些年来比较热火,饶有兴趣的开始接触了解,配置环境,编写运行第一个程序。 一、创建项目注:本文用的GoLand版本为官网最新版Version: 2021.2...
- 本文探讨了数据库分片的解决方案,强调了数据库分片在数据存储规模增长时的实用性。分片是将数据分布到多台机器上的技术,通过横向扩展和纵向扩展实现。文章还详细介绍了数据库分片的四种主要实现方式:什么都不做、垂直扩展、复制和专用数据库。每种方式都有其优点和限制,例如,垂直扩展可能需要更多的硬件资源,而复制可以提高读取性能,但可能需要更多的存储空间。最终,选择数据库分片方案应根据问题的复杂性和资 本文探讨了数据库分片的解决方案,强调了数据库分片在数据存储规模增长时的实用性。分片是将数据分布到多台机器上的技术,通过横向扩展和纵向扩展实现。文章还详细介绍了数据库分片的四种主要实现方式:什么都不做、垂直扩展、复制和专用数据库。每种方式都有其优点和限制,例如,垂直扩展可能需要更多的硬件资源,而复制可以提高读取性能,但可能需要更多的存储空间。最终,选择数据库分片方案应根据问题的复杂性和资
- 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。
- 1写在前面嗯,学习GO,所以有了这篇文章博文内容为《GO语言实战》读书笔记之一主要涉及知识:嵌入类型/隐私性标识符的作用理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》2嵌入类型Go 语言 允许用户扩展或者修改已... 1写在前面嗯,学习GO,所以有了这篇文章博文内容为《GO语言实战》读书笔记之一主要涉及知识:嵌入类型/隐私性标识符的作用理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》2嵌入类型Go 语言 允许用户扩展或者修改已...
- 本期分享将对 Excelize 的 2023 年部分更新背后的技术点、Go 1.21.0 版本中 XML 标准库的兼容性问题,以及如何构建 WebAssembly 版本跨语言支持展开讨论。 本期分享将对 Excelize 的 2023 年部分更新背后的技术点、Go 1.21.0 版本中 XML 标准库的兼容性问题,以及如何构建 WebAssembly 版本跨语言支持展开讨论。
- Excelize 是 Go 语言编写的用于操作电子表格办公文档的开源基础库,2023年8月28日,社区正式发布了 2.8.0 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。 Excelize 是 Go 语言编写的用于操作电子表格办公文档的开源基础库,2023年8月28日,社区正式发布了 2.8.0 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。
- 问题go两个协程使用了同一个文件句柄,其中一个协程关闭了这个文件句柄并退出了协程,如何及时通知另一个协程退出? 分析当一个协程关闭了这个文件对象后,底层文件的文件描述符就会被释放。这个时候,另一个协程还持有着同一个文件对象,但其实对应的文件描述符已经不存在了。所以当第二个协程通过这个文件对象再对文件进行操作的时候,例如读写文件等,就会发生异常,比如文件描述符不存在错误等。 解决为了避免这个... 问题go两个协程使用了同一个文件句柄,其中一个协程关闭了这个文件句柄并退出了协程,如何及时通知另一个协程退出? 分析当一个协程关闭了这个文件对象后,底层文件的文件描述符就会被释放。这个时候,另一个协程还持有着同一个文件对象,但其实对应的文件描述符已经不存在了。所以当第二个协程通过这个文件对象再对文件进行操作的时候,例如读写文件等,就会发生异常,比如文件描述符不存在错误等。 解决为了避免这个...
- 简介certstrap https://github.com/square/certstrap 是一个自签名证书生成工具,相比 openssl 来说更简易好用。 安装安装要求:Go 1.18+git clone https://github.com/square/certstrapcd certstrapgo buildmv certstrap /usr/local/bin/certstr... 简介certstrap https://github.com/square/certstrap 是一个自签名证书生成工具,相比 openssl 来说更简易好用。 安装安装要求:Go 1.18+git clone https://github.com/square/certstrapcd certstrapgo buildmv certstrap /usr/local/bin/certstr...
- 编译方式 静态编译在Go中,可以使用静态编译来将Go程序编译为一个独立的可执行文件,其中包含了所有的依赖库和运行时环境,不需要依赖外部的共享库。这样就可以在没有Go语言环境的机器上直接运行编译后的可执行文件。# output-file 是输出的可执行文件名go build -o output-file main.go优点是可以将这个可执行文件复制到其他机器上,无需安装Go语言环境,就可以直... 编译方式 静态编译在Go中,可以使用静态编译来将Go程序编译为一个独立的可执行文件,其中包含了所有的依赖库和运行时环境,不需要依赖外部的共享库。这样就可以在没有Go语言环境的机器上直接运行编译后的可执行文件。# output-file 是输出的可执行文件名go build -o output-file main.go优点是可以将这个可执行文件复制到其他机器上,无需安装Go语言环境,就可以直...
- 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。
- 语法基础之函数跟java的方法是一样的,复杂情况还是有所区别,关键字func基本语法func 函数名(参数)(返回值){函数体}类型简写如果入参相邻参数类型一致,则可以省略func intSum(x, y int) int {return x + y}可指定返回参数的名称,但不可省略returnfunc calc(x, y int) (sum, sub int) {sum = x + ysu... 语法基础之函数跟java的方法是一样的,复杂情况还是有所区别,关键字func基本语法func 函数名(参数)(返回值){函数体}类型简写如果入参相邻参数类型一致,则可以省略func intSum(x, y int) int {return x + y}可指定返回参数的名称,但不可省略returnfunc calc(x, y int) (sum, sub int) {sum = x + ysu...
上滑加载中
推荐直播
-
香橙派AIpro的远程推理框架与实验案例
2025/07/04 周五 19:00-20:00
郝家胜 -华为开发者布道师-高校教师
AiR推理框架创新采用将模型推理与模型应用相分离的机制,把香橙派封装为AI推理黑盒服务,构建了分布式远程推理框架,并提供多种输入模态、多种输出方式以及多线程支持的高度复用框架,解决了开发板环境配置复杂上手困难、缺乏可视化体验和资源稀缺课程受限等痛点问题,真正做到开箱即用,并支持多种笔记本电脑环境、多种不同编程语言,10行代码即可体验图像分割迁移案例。
回顾中 -
鸿蒙端云一体化应用开发
2025/07/10 周四 19:00-20:00
倪红军 华为开发者布道师-高校教师
基于鸿蒙平台终端设备的应用场景越来越多、使用范围越来越广。本课程以云数据库服务为例,介绍云侧项目应用的创建、新建对象类型、新增存储区及向对象类型中添加数据对象的方法,端侧(HarmonyOS平台)一体化工程项目的创建、云数据资源的关联方法及对云侧数据的增删改查等操作方法,为开发端云一体化应用打下坚实基础。
回顾中
热门标签