• 在习近平新时代中国特色社会主义思想指引下——新时代 新作为 新篇章——山西黄河新闻网 2019-04-11
  • 《这就是铁甲》迎来总决赛 郑爽放手一搏 2019-04-11
  • 大厨风范的海鲜做法,小白也能学会,鲜美营养,好吃到哭 2019-04-09
  • 暴雨突袭石泉 干部背群众转移到安全地带 2019-04-06
  • 军报评论:把红色基因一代代传下去 2019-04-06
  • 扎实推进民族团结和边疆稳固 2019-04-05
  • 美媒:无人驾驶或将最先在华实现 2019-04-05
  • 今年春运购票变化大 回家的车票该咋买? 2019-03-21
  • 人民日报:传统节日,从美食走向美感 2019-03-14
  • “中国式创新”刷新汉语词库 2019-03-04
  • 手工红薯粉丝 ——舌尖上的年味与乡愁文章中国国家地理网 2019-02-25
  • 中共山西省委组织部公示 2019-02-24
  • [微笑]其实很简单就能破这个局:立法禁止通过房地产二次交易获利,炒房就会被杜绝,炒房一旦被杜绝,房价就会受正常供需关系影响波动在合理范围内。 2019-02-24
  • 400-700-1307

    【GO+区块链面试题】go执行的随机性和闭包

    2019-01-26 17:05
    下面的代码会输出什么,并说明原因
     
    1.func main() {
    2.runtime.GOMAXPROCS(1)
    3.wg := sync.WaitGroup{}
    4.wg.Add(20)
    5.for i := 0; i < 10; i++ {
    6.go func() {
    7.fmt.Println("A: ", i)
    8.wg.Done()
    9.}()
    10.}
    11.for i := 0; i < 10; i++ {
    12.go func(i int) {
    13.fmt.Println("B: ", i)
    14.wg.Done()
    15.}(i)
    16.}
    17.wg.Wait()
    18.}
    考点:go执行的随机性和闭包
    解答:
    谁也不知道执行后打印的顺序是什么样的,所以只能说是随机数字。 但是A:均为输出10,B:从0~9输出(顺序不定)。 第一个go func中i是外部for的一个变量,地址不变化。遍历完成后,最终i=10。 故go func执行时,i的值始终是10。
    第二个go func中i是函数参数,与外部for中的i完全是两个变量。 尾部(i)将发生值拷贝,go func内部指向值拷贝地址。

    开班信息

    当前校区

    北京校区
    • 北京校区
    • 上海校区
    • 广州校区
    • 沈阳校区
    • 杭州校区
    • 南京校区
    • 郑州校区
    • 成都校区
    • 深圳校区
    • 西安校区
    • 苏州校区

    Copyright © 2007-2019 IT兄弟连教育 版权所有 京ICP备11018177号  京公网安备 11010802026987号

  • 在习近平新时代中国特色社会主义思想指引下——新时代 新作为 新篇章——山西黄河新闻网 2019-04-11
  • 《这就是铁甲》迎来总决赛 郑爽放手一搏 2019-04-11
  • 大厨风范的海鲜做法,小白也能学会,鲜美营养,好吃到哭 2019-04-09
  • 暴雨突袭石泉 干部背群众转移到安全地带 2019-04-06
  • 军报评论:把红色基因一代代传下去 2019-04-06
  • 扎实推进民族团结和边疆稳固 2019-04-05
  • 美媒:无人驾驶或将最先在华实现 2019-04-05
  • 今年春运购票变化大 回家的车票该咋买? 2019-03-21
  • 人民日报:传统节日,从美食走向美感 2019-03-14
  • “中国式创新”刷新汉语词库 2019-03-04
  • 手工红薯粉丝 ——舌尖上的年味与乡愁文章中国国家地理网 2019-02-25
  • 中共山西省委组织部公示 2019-02-24
  • [微笑]其实很简单就能破这个局:立法禁止通过房地产二次交易获利,炒房就会被杜绝,炒房一旦被杜绝,房价就会受正常供需关系影响波动在合理范围内。 2019-02-24