安装在线教程

可以在本机运行,

然后安装教程

go get code.google.com/p/go-tour/gotour

或者中文的

go get bitbucket.org/mikespook/go-tour-zh/gotour

最后执行安装产生的gotour执行文件,即可在http://localhost:3999

打开教程。

一些练习的答案

#46  练习:斐波纳契闭包

package main

import "fmt"

// fibonacci 函数会返回一个返回 int 的函数。

func fibonacci() func() int {

var a int = 1

var b int = 1

return func() int {

c := a+b

a = b

b = c

return c

}

}

func main() {

f := fibonacci()

for i := 0; i < 10; i++ {

fmt.Println(f())

}

}

#69  练习:等价二叉树

package main

import (

"bitbucket.org/mikespook/go-tour-zh/tree"

"fmt"

)

/*

type Tree struct {

Left *Tree

Value int

Right *Tree

}

*/

// Walk 步进 tree t 将所有的值从 tree 发送到 channel ch。

func Walk(t *tree.Tree, ch chan int) {

if t != nil {

Walk(t.Left, ch)

ch

Walk(t.Right, ch)

}

}

// Same 检测树 t1 和 t2 是否含有相同的值。

func Same(t1, t2 *tree.Tree) bool {

ch1 := make(chan int, 10)

go Walk(t1, ch1)

ch2 := make(chan int, 10)

go Walk(t2, ch2)

for i := 0; i < 10; i++ {

if

return false

}

}

return true

}

func main() {

fmt.Println(Same(tree.New(1), tree.New(1)))

}

#57练习:错误

package main

import (

"fmt"

)

type ErrNegativeSqrt float64

func (e ErrNegativeSqrt) Error() string {

return fmt.Sprintf("cannot Sqrt negative number: %f", e)

}

func Sqrt(f float64) (float64, error) {

if f < 0 {

return 0, ErrNegativeSqrt(f)

}

x := f

for i := 0; i < 10; i++ {

x = (x + f/x) / 2

}

return x, nil

}

func main() {

fmt.Println(Sqrt(2))

fmt.Println(Sqrt(-2))

}

#44  练习:Map

package main

import (

//"fmt"

"strings"

"bitbucket.org/mikespook/go-tour-zh/wc"

)

func WordCount(s string) map[string]int {

result := map[string]int {}

f := strings.Fields(s)

for _, v := range f {

result[v] += 1

}

return result

}

func main() {

wc.Test(WordCount)

}

有疑问加站长微信联系(非本文作者)

golang c 语言教程中文,Go 语言教程实战相关推荐

  1. python3菜鸟教程中文-Python3菜鸟教程 1.介绍

    对简明Python3教程 1.介绍感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧! Python是少有的几种既强大又简单的编程语言.你将惊喜地发现通过使用Python即可轻松 ...

  2. 微软再推 Rust 语言免费中文教程,更香了!

    公众号关注 「奇妙的 Linux 世界」 设为「星标」,每天带你玩转 Linux ! 在过去的几个月,Amazon.Facebook.微软以及谷歌等科技巨头正疯狂吸纳人才市场上的 Rust 语言程序员 ...

  3. 数据科学教程:R语言与DataFrame[2016版]

    数据科学教程:R语言与DataFrame[2016版] r HarryZhu 2016年03月16日发布 保存 标签:至少1个,最多5个 r× 开发语言 平台框架 服务器 数据库和缓存 开发工具 系统 ...

  4. SAP UI5 初学者教程之八 - 多语言的支持试读版

    一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 初学者教程之一:Hello World SAP UI5 初学者教程之二:SAP UI5 ...

  5. 全国计算机等级考试二级c语言程序设计,全国计算机等级考试二级教程:C语言程序设计(2016年版) pdf epub mobi txt 下载...

    全国计算机等级考试二级教程:C语言程序设计(2016年版) pdf epub mobi txt 下载 图书介绍 ☆☆☆☆☆ 教育部考试中心 编 下载链接在页面底部 发表于2021-05-17 类似图书 ...

  6. Wix 安装部署教程(十三) -- 多语言安装包

    原文:Wix 安装部署教程(十三) -- 多语言安装包 这几天摸索WIX的多语言安装包(这里是Wix的setup 工程,不是Bundle),终于走通了,感谢网友uni的指点.WIX的多语言安装包能够根 ...

  7. WordPress多语言翻译插件 - WPML使用教程

    WPML不但可用于主题插件翻译,而且是构建多语言网站的利器. 下面介绍WPML多语言插件一般用户最基本的使用方法: 第一步:上传WPML插件 1:WPML多语言CMS(核心插件,文件夹名称为sitep ...

  8. ocaml快餐教程(1) - 强类型语言

    ocaml快餐教程(1) - 强类型语言 Keep说:自律给我自由. 在汽车.航天.铁路等高可靠性要求的代码中,经常要求使用MISRA C/C++标准,该标准对于C语言中不同整数类型之间的赋值有比较严 ...

  9. C 语言从入门到精通教程(2021 )

    C 语言从入门到精通教程(2021年) 文章目录 计算机常识 什么是计算机程序 ? 什么是计算机语言 ? 常见的计算机语言类型有哪些 ? 什么是C语言? C语言历史 C语言标准 C语言现状 为什么要学 ...

最新文章

  1. 关于AJAX 第三篇
  2. 利用 sys.sysprocesses 检查 Sql Server的阻塞和死锁
  3. springboot 打卡功能_实战:如果让你用SpringBoot实现签到奖励的功能,你会怎么做?...
  4. .NET部分知识点整理
  5. 私人仓库免费后本地git和远程github首次连接
  6. C# 语法练习(2): 字符转义
  7. win10电脑插耳机没声音_电脑没有声音是什么原因 教您电脑突然没声音怎么解决...
  8. mysql goldengate_goldengate同步mysql
  9. 企业邮箱domino跟exchange
  10. 两台文件服务器共享文件同步,如何实现两台或多台电脑远程修改文件同步更新?...
  11. TokenInsight作为联盟伙伴加入CoinMarketCap的数据透明联盟(DATA) | TokenInsight
  12. python 进行照片分类_python 照片文件名分类
  13. python爬取12306
  14. 2019高考数学必考知识点,高考数学知识板块
  15. 降维 php,线性降维方法 - 百度开发者中心的个人空间 - OSCHINA - 中文开源技术交流社区...
  16. 瑞星杀毒软件影响Applet无法启动的解决方法
  17. NFC Forum发布NFC数据交换格式(NDEF)规范
  18. html5考试总结300字,中段考试总结作文300精选集锦
  19. maven下载jia比较慢的解决方法
  20. 从永远到永远-Spring Cloud(一)

热门文章

  1. 精彩flash《威尼斯的泪》
  2. 京东主图视频用这种方法批量下载速度更快
  3. 1. 理解分支限界法
  4. mysql开启日志记录及清理general_log文件
  5. 火爆全网,软件测试数据库常用 SQL 语句总结,你要的我都有......
  6. JS中charCodeAt和 charAt方法
  7. 陈立杰:关于Paper,这是个好问题!
  8. WhatsApp-跨境电商必争之地
  9. 【C#+SQL Server】实现ERP管理系统 四:销售收款单模块设计(附源码和资源)
  10. 模型评估指标之间的一些联系