码迷,mamicode.com
首页 > 其他好文 > 详细

Exercise: Maps (单词统计)

时间:2017-02-02 23:41:15      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:答案   静态类   more   ima   测试   img   有助于   程序   tps   

A Tour of Go

Exercise: Maps

https://tour.golang.org/moretypes/23

WordCount (单词统计) 是一个很经典的小程序了,在很多编程入门教程中都会出现。

这道题比较简单,但也有一些知识点值得一提。

技术分享

上面这个答案我是参考了网上别人写的。但在参考别人之前我也自己解题了,其中,唯一不同之处是这一句:

m[word]++

我本来写的是:

_, ok := m[word]
if ok {
    m[word]++
} else {
    m[word] = 1
}

这是因为我之前学过别的动态类型编程语言,如果读取一个不存在的 key, 很可能返回 nil, 因此不能直接进行计算。

但是 golang 是静态类型语言,事先已经定义了 map 里的元素类型是 int, 因此读取一个不存在的 key 返回 0, 可以直接计算。

(如果事先定义了元素类型为 bool, 则默认返回 false, 如果是 string 则返回空字符串 "")

 

另外,这道题提供了一个测试函数 wc.Test, 这个函数也很简单,值得看一看,有助于初步学习测试程序的写法。

https://github.com/golang/tour/blob/master/wc/wc.go

 

Exercise: Maps (单词统计)

标签:答案   静态类   more   ima   测试   img   有助于   程序   tps   

原文地址:http://www.cnblogs.com/ahui2017/p/6361827.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!