【发布时间】:2009-11-03 20:39:51
【问题描述】:
我必须承认,我对 HashTables 的工作原理只有初步的了解,尽管据我所知,这似乎相当简单。我的问题是这样的:似乎传统智慧是使用简单的基本值类型,例如整数作为 HashTable 中的键。然而,字符串也经常被使用,尽管在许多语言中它们被实现为引用类型。我觉得一般不鼓励的是使用复杂的引用类型;我猜这是因为这样做需要更慢的哈希函数?但是为什么字符串如此常用呢?毕竟,字符串内部不是 char[] 数组吗(同样,在大多数语言中)?
最后,什么值类型通常被认为是“最好的”(甚至只是“可接受的”)选择作为 HashTable 中的键?是否有任何常用的选择实际上被认为是“坏的”(可能像字符串)?
【问题讨论】:
标签: language-agnostic types hashtable key