`

娃娃鸭学Ruby-14、哈希

阅读更多
哈希

键值对
映射(map)
关联数组

numbers=Hash.new
numbers["one"]=1
numbers["two"]=2
numbers["three"]=3

sum=number["one"]+number["two"]

1、哈希字面量
逗号分隔的键/值对,被包含在花括号中
numbers={"one"=>1,"two"=>2,"three"=>3}

Symbol对象方法
numbers={:one=>1,:two=>2,:three=>3}
不过Symbol是不可改变的,功能受限的字符串
Ruby1.8可用,取代=>,Ruby1.9不支持
numbers={:one,1,:two,2,:three,3}

Ruby1.8,1,9支持最后跟上一个逗号
numbers={:one=>1,:two=>2,}

Ruby1.9中用分号取代=>
numbers={one;1,two;2,three;3}

2、哈希码、相等性及可变键
Ruby里的哈希是采用一种称为哈希表的数据结构来实现的
hash方法
   返回Fixnum的哈希码
   两键相等返回相同的哈希码,不相等的键也可能会拥有相同的哈希码。
Hash类 eql? 方法比较键之间的相等性。
eql?方法与==操作符一样。
重写eql?,必须同时重写hash方法
分享到:
评论

相关推荐

    MD5-Hash哈希值计算工具

    MD5-Hash哈希值计算工具的应用与重要性 随着信息技术的飞速发展,数据安全与文件完整性验证已成为人们日益关注的问题。MD5-Hash哈希值计算工具便是在这一背景下应运而生的实用软件工具。MD5(Message-Digest ...

    ruby-2.2.4.tar.gz、rubygems-2.6.2.zip、redis-3.2.2.gem

    在给定的资源中,我们涉及到了三个主要的IT组件:Ruby编程语言、RubyGems包管理器以及Redis键值存储系统。以下是关于这些技术的详细知识点: 1. **Ruby 2.2.4**: Ruby是一种面向对象的、动态类型的编程语言,以其...

    MD5-Hash哈希值计算工具_1.6.0.0.zip

    MD5-Hash哈希值计算工具是一款用于生成和验证文件MD5哈希值的应用程序,版本为1.6.0.0。在信息技术领域,哈希函数,特别是MD5(Message-Digest Algorithm 5),是一种广泛使用的算法,用于对任意长度的数据进行单向...

    Go-Meow哈希的Golang实现非常快速的非加密哈希

    Go-Meow哈希是一种高性能的非加密哈希算法,主要设计用于大数据处理和实时分析。在Golang中实现Go-Meow哈希,能够充分利用Go语言的并发特性,为大规模数据处理提供高效的哈希计算服务。下面我们将深入探讨Go-Meow...

    ruby-2.1.10

    2. **Hash和Symbol的变化**:Ruby-2.1引入了新的Hash实现,提升了哈希表的性能,同时可能对Symbol对象进行了调整,以减少内存消耗。 3. **块和Proc**:Ruby-2.1.10可能增强了对块(block)和Proc对象的处理,包括更...

    笨方法学ruby-中文版

    《笨方法学Ruby》是针对初学者的一本中文教程,旨在通过实践性的学习方式帮助读者掌握Ruby编程语言。这本书的特点是强调动手实践,通过一系列的练习来深化对Ruby语法和编程概念的理解。以下是对该书内容及压缩包文件...

    大数据结构课程设计--哈希表实验报告材料

    "大数据结构课程设计--哈希表实验报告材料" 在大数据结构课程设计中,哈希表实验报告材料是非常重要的一部分。本文档将详细介绍哈希表的设计和实现,包括哈希函数的构造、冲突处理、查找算法等。 一、哈希表的设计...

    ruby-2.4.0.tar.gz

    Ruby是一种面向对象、动态类型的脚本语言,常用于Web开发、服务器端编程和各种应用程序的构建。在描述中提到的"ruby-2.4.0.tar.gz"是Ruby的一个特定版本,即2.4.0,它以压缩格式提供,方便用户下载和安装。这个...

    linux版 ruby-2.3.0

    Ruby-2.3.0还在错误处理、字符串处理、数组和哈希操作等方面做了改进,使得编程体验更加流畅。学习和掌握这一版本的Ruby,将有助于开发者更好地利用这个强大的语言进行Web开发、自动化脚本编写、系统管理等各种任务...

    ruby-2.6.1.tar.gz

    它支持多种数据结构,如字符串、哈希、列表、集合和有序集合,这使得它在实时数据处理和高速操作中非常有用。而创建和管理Redis集群通常需要特定的工具和配置,其中可能涉及到使用Ruby编写的脚本或Gem(Ruby的包管理...

    Ruby-Phashion是围绕pHash库的一个Ruby封装

    4. API接口:Ruby-Phashion为开发者提供了简单易用的API,使得在Ruby程序中集成图像和音频的哈希计算变得轻松。开发者可以快速地实现文件的哈希生成、比较和相似度查询等功能。 5. 性能优化:虽然pHash库本身已经...

    Ruby-LazyHighCharts一个简单和非常灵活的方式从ruby代码使用HighCharts

    《Ruby-LazyHighCharts:轻松实现数据可视化的高效工具》 Ruby-LazyHighCharts是一个针对Ruby编程语言设计的库,它提供了一种简单且高度灵活的方法来利用HighCharts库进行数据可视化。HighCharts是一个广泛使用的...

    ruby-2.3.3tar.gz

    Ruby是一种强大的、面向对象的脚本编程语言,由日本的松本行弘(Yukihiro Matsumoto)在1995年设计并开发。它以其简洁、优雅的语法和强大的元编程能力而受到程序员的喜爱。Ruby-2.3.3是这个语言的一个特定版本,发布...

    NOI导刊--基础数据结构--哈希、并查集.ppt

    NOI导刊--基础数据结构--哈希、并查集--江涛 内含----讲义,代码

    ruby-2.3.0

    此外,Ruby-2.3.0还引入了`Hash#dig`方法,这是一个非常实用的工具,用于从嵌套的哈希中检索值。它允许你在不知道具体层次的情况下安全地获取深层键的值,避免了因尝试访问不存在的键而引发的异常。例如: ```ruby ...

    数据结构课程设计--哈希表实验报告.doc

    数据结构课程设计--哈希表实验报告.doc

    Ruby-mysql2一个现代的简单和非常快速的RubyMysql库

    5. **结果集的智能处理**:返回的结果集可以被自动转换为Ruby的数据结构,如数组和哈希,方便开发者直接操作。此外,结果集还可以按需获取数据,避免一次性加载大量数据导致的内存压力。 6. **兼容性**:mysql2库与...

    mongo-ruby-driverMongoDB的Ruby驱动程序

    MongoDB的Ruby驱动程序,即`mongo-ruby-driver`,是连接和操作MongoDB数据库的一个关键组件,专门针对Ruby编程语言设计。这个驱动程序允许Ruby开发者充分利用MongoDB的强大功能,包括文档型数据存储、分布式数据处理...

    ruby-2.7.0.tar.gz

    Ruby是一种面向对象的、动态类型的编程语言,以其简洁、优雅的语法和强大的元编程能力而闻名。Ruby 2.7.0是这个语言的一个稳定版本,发布于2020年,它带来了许多改进和新特性,旨在提高性能、增强开发者体验以及保持...

Global site tag (gtag.js) - Google Analytics