V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
gramyang

go 为什么只有 hashmap?

  •  
  •   gramyang · Jul 23, 2019 · 4555 views
    This topic created in 2478 days ago, the information mentioned may be changed or developed.

    为什么 go 中只有 hashmap ?而不像 java 一样提供 treemap 和 linkedhashmap 呢?

    上网查了一下,貌似是 go 的开发团队有意为之??

    10 replies    2019-07-24 10:31:41 +08:00
    ai277014717
        1
    ai277014717  
       Jul 23, 2019
    less is more?
    tairan2006
        2
    tairan2006  
       Jul 23, 2019
    第三方库里面是有的
    misaka19000
        3
    misaka19000  
       Jul 23, 2019
    我也很困惑,之前不得已自己实现了一个 SkipList 来存储有序的数据
    scnace
        4
    scnace  
       Jul 23, 2019 via Android
    treemap 有的 看下 gods 这个库
    janxin
        5
    janxin  
       Jul 23, 2019
    因为标准库不提供?
    reus
        6
    reus  
       Jul 24, 2019   ❤️ 3
    go 的 map 就只是 map,是一个抽象数据类型( ADT )
    hashmap 是具体实现,也就是,可以有其他实现,只要保证符合这个 ADT 的语义就行
    go 的 map 是语言的一部分,是一种内置类型,而 java 的 TreeMap 和 LinkedHashMap 都是库实现,而不是语言的一部分
    go 语言有 map 这个内置类型,而 java 没有,应该这样理解,而不是 go 只有 hashmap
    要其他的 map,实现成库就行,像 java 那样。不过 go 还没有泛型,有泛型会更好写好用一些
    laravel
        7
    laravel  
       Jul 24, 2019
    出来的晚,轮子没造全
    lance6716
        8
    lance6716  
       Jul 24, 2019 via Android
    为什么 Python 也没有,为什么有序字典的地位这么低
    lance6716
        10
    lance6716  
       Jul 24, 2019 via Android
    @mlxy123123 我指的是 treemap 那种大小关系的全序,不是插入顺序
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   985 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 23:17 · PVG 07:17 · LAX 16:17 · JFK 19:17
    ♥ Do have faith in what you're doing.