Go语言中文网 为您找到相关结果 8308

Go 语言单元测试实践

文链接:Go 语言单元测试实践 什么是软件测试? 软件测试是一个过程,该过程对软件(计算机程序)进行各种操作来发现软件错误。 为什么要进行软件测试? 进行软件测试可以帮助我们验证软件的各种功能正常,保证软件的正常工作从而提高软件质量。并且在实践中已被证明是颇有成效的。 测试驱动开发的由来: 一个从大量实践中得出的结论:人们发现在软件开发周期中,软件错误每进入到下一个阶段要修正它所付出的时间和人力会出人意表的翻上十倍。所以更早地进行软件测试可以更早地发现软件错误,从而大大减少后期修正的成本。后来又有人提出了测试驱动开发(TDD: Test-driven development),主体思想就是先编写测试程序,再实现程序功能。 下面就来介绍如何在 Go 语言中进行软件测试中较为重要的一环:单元测试...阅读全文

Golang 复合数据类型:切片

切片(slice) 切片的底层是数组实现的,可以按需自动增长和缩小。切片是数组的引用,因此是引用类型,不支持直接比较,只能和nil比较。切片的动态增长是通过内建函数append()来实现的,这个函数可以快速且高效地增长切片,也可以通过切片再次切割,缩小每一个切片的大小。 切片不存值,底层数组存值 切片指向一个底层数组 底层数组是占用一块连续的内存空间 创建数组切片 创建两个类型分别为 int 型和 string 型的切片,并初始化 func main(){ var slice1 []int var slice2 []string fmt.Println(slice1,slice2) fmt.Println(slice1 == nil) //true,没有开辟内存空间 fmt.Println(...阅读全文

博文 2020-06-03 15:32:39 sunlingbot

leetcode_819

Golang: 思路:这题的难点也在字符串的处理,但大部分的语言都提供类似的函数了,如果我们想提取字符串里的所有单词,使用正则是很好的途径,自己去分割字符串,处理标点符号,反而没什么意思。 代码如下: func mostCommonWord(paragraph string, banned []string) string { reg:=regexp.MustCompile("\\w+") mp1,mp2:=make(map[string]int),make(map[string]int) for _,v:=range banned{ mp1[v]=1 } if reg!=nil { strs:=reg.FindAllString(paragraph,-1) for _,v:=range s...阅读全文

博文 2020-02-27 09:32:41 淳属虚构

23. 一篇文章 说清楚 Go语言里的函数

Hi,大家好,我是明哥。 在自己学习 Golang 的这段时间里,我写了详细的学习笔记放在我的个人微信公众号 《Go编程时光》,对于 Go 语言,我也算是个初学者,因此写的东西应该会比较适合刚接触的同学,如果你也是刚学习 Go 语言,不防关注一下,一起学习,一起成长。 我的在线博客:golang.iswbm.com 我的 Github:github.com/iswbm/GolangCodingTime 1. 关于函数 函数是基于功能或 逻辑进行封装的可复用的代码结构。将一段功能复杂、很长的一段代码封装成多个代码片段(即函数),有助于提高代码可读性和可维护性。 在 Go 语言中,函数可以分为两种: 带有名字的普通函数 没有名字的匿名函数 由于 Go语言是编译型语言,所以函数编写的顺序是无关紧要...阅读全文

博文 2020-05-31 13:34:30 王一白

(二) Golang变量(1) 介绍和注意事项

1. 变量的介绍 1.1 变量的概念 变量相当于内存中一个数据存储空间的表示,你可以把变量看做是一个房间的门牌号,通过门牌号我们可以找到房间,同样的道理,通过变量名可以访问到变量(值)。 1.2 变量的使用步骤 声明变量(也叫:定义变量) 非变量赋值 使用变量 image.png 输出: image.png 2. 变量使用注意事项 1) 变量表示内存中的一个存储区域 2) 该区域有自己的名称(变量名)和类型(数据类型) image.png 3) Golang 变量使用的三种方式 (1) 第一种:指定变量类型,声明后若不赋值,使用默认值 func main() { //int 默认值为0 var i int fmt.Println("i=", i) } 输出 i= 0 (2) 第二种:根据值自...阅读全文

博文 2020-05-19 10:32:53 21号新秀_邓肯

Go随笔——Go复合数据类型

1.goto跳转package mainimport "fmt"func main() {total := 0index := 0max := 100START:index += 1total += indexif index == max {goto END}goro STARTEND:fmt.Println("total")}2.数组类型1)声明数组声明需要指定组成元素的类型以及存储元素的数量(长度)。在数组声明后。其长度不可修改,数组的每个元素会根据对应类型的零值进行初始化。var names [10]stringvar scores [10]int初始化元素names = []string{"1","2","3"} 空切片,已经初始化但是元素数量为0names = []string{...阅读全文

博文 2020-05-25 02:33:15 wujunqi1996

如何在JavaScript中转换数据类型?

在JavaScript中,数据类型用于对一种特定类型的数据进行分类,确定可以分配给类型的值以及可以对其执行的操作。虽然由于类型强制,JavaScript会自动转换许多值,但为了达到预期的结果,通常最好在类型之间手动转换值。那么如何在JavaScript中转换数据类型?下面本篇文章就来给大家介绍一下,希望对大家有所帮助。 原文地址:如何在JavaScript中转换数据类型?JavaScript 变量可以转换为新变量或其他数据类型,分为两种情况:● 隐性转换:通过 JavaScript 自身自动转换● 显性转换:通过使用 JavaScript 函数进行转换隐性转换作为一种编程语言,javascript对意外值非常宽容。因此,JavaScript将尝试转换意外的值,而不是直接拒绝它们。这种隐性转换...阅读全文

博文 2020-03-25 23:32:43 yanghs

Golang 学习笔记:流程控制

条件语句 Go语言没有do-while语句,而for语句拥有更广泛的含义和用途switch语句也有进一步的扩展,支持类型判断和初始化子句等。 常见的流程控制的关键字有: defer:用于捕获异常和资源回收等工作 select:用于多支选择(配合通道使用) go:用于异步启动 goroutine 并执行特定函数 if判断语句 func main() { a := 15 if a < 20 { fmt.Println("a小于20") } //顺序执行 fmt.Println("a的值是", a) } if判断语句是最简单的判断,缺点在于无法返回false的情况,为了增加这一功能就要用到if-else语句。 if-else语句 func main() { a := 20 if a < 20 { ...阅读全文

博文 2020-06-03 13:32:42 sunlingbot