在ruby中使用each方法

Ruby中的每个数组和散列都是一个对象,这些类型的每个对象都有一组内置方法。刚接触Ruby的程序员可以通过下面的简单示例了解如何将每个方法与数组和哈希一起使用。...

Ruby中的每个数组和散列都是一个对象,这些类型的每个对象都有一组内置方法。刚接触Ruby的程序员可以通过下面的简单示例了解如何将每个方法与数组和哈希一起使用。

A man working on a laptop and notebook

在ruby中对数组对象使用each方法

首先,通过将数组指定给“stooges”来创建数组对象

>> stooges = ['Larry', 'Curly', 'Moe']

接下来,调用each方法并创建一小块代码来处理结果。

>> stooges.each { |stooge| print stooge + "\n" }

此代码生成以下输出:

Larry Curly Moe

each方法接受两个参数:元素和块。包含在管道中的元素类似于占位符。在管道中放置的任何内容都将在块中依次表示数组的每个元素。块是在每个数组项上执行的代码行,并交给元素进行处理。

通过使用do定义更大的代码块,可以轻松地将代码块扩展到多行:

>> stuff.each do |thing| print thing print "\n" end

这与第一个示例相同,只是块被定义为元素(在管道中)之后和end语句之前的所有内容。

将each方法与哈希对象一起使用

与array对象一样,hash对象也有一个each方法,可用于对hash中的每个项应用代码块。首先,创建一个包含一些联系人信息的简单哈希对象:

>> contact_info = { 'name' => 'Bob', 'phone' => '111-111-1111' }

然后,调用each方法并创建一行代码块来处理和打印结果。

>> contact_info.each { |key, value| print key + ' = ' + value + "\n" }

这将产生以下输出:

name = Bob phone = 111-111-1111

这与数组对象的each方法完全相同,但有一个关键区别。对于散列,创建两个元素,一个用于散列键,另一个用于值。与数组一样,这些元素是占位符,用于在Ruby循环通过散列时将每个键/值对传递到代码块中。

通过使用do定义更大的代码块,可以轻松地将代码块扩展到多行:

>> contact_info.each do |key, value| print print key + ' = ' + value print "\n" end

这与第一个散列示例相同,只是块被定义为元素之后(管道中)和end语句之前的所有内容。

  • 发表于 2021-09-28 05:11
  • 阅读 ( 167 )
  • 分类:数学

你可能感兴趣的文章

红宝石(ruby)和python(python)的区别

...优点是这些语言支持面向对象编程(OOP)。OOP方法有助于使用对象对一个或一组程序进行建模。Ruby和Python的关键区别在于Ruby主要用于web开发,而Python主要用于各种应用程序,包括web开发。Python还常用于科学计算、数据科学应用...

  • 发布于 2020-10-19 17:41
  • 阅读 ( 344 )

python(python)和红宝石(ruby)的区别

...方版本,随着时间的推移,它成为社区中最流行和最广泛使用的第一个编程语言之一。它是一种功能强大的高级编程语言,但更易于学习和掌握。Python的强大功能常常被比作Perl,但它的语法要简单得多,代码可读性也很高。最...

  • 发布于 2021-06-25 22:26
  • 阅读 ( 251 )

ruby for kids教你的孩子(和你自己)ruby编程语言

...uby for kids是一个网站,它为新的程序员(无论老少)提供使用Ruby编程语言的指导和屏幕广播。Ruby4Kids网站首先解释了您需要在系统上满足的先决条件,然后再进入更困难的级别。这些屏幕广播是在macosx中完成的,但是可以在任...

  • 发布于 2021-07-25 04:52
  • 阅读 ( 177 )

极客生活:如何在你的家庭电脑上托管个人维基

...个人、可搜索、版本控制的数字笔记本。想象一下,只需使用web浏览器,就可以随时随地存储和编辑您的待办事项列表、书签、文本片段、项目注释、参考资料、网络图像或家庭计算机上您想要的任何内容—无需磁盘、拇指驱动...

  • 发布于 2021-08-03 04:14
  • 阅读 ( 163 )

ruby中的全局变量

...它们以$(美元符号)字符开头表示。然而,全局变量的使用通常被认为是“非Ruby”,并且您很少看到它们。 定义全局变量 全局变量的定义和使用与任何其他变量一样。要定义它们,只需给它们赋值并开始使用它们。但是,...

  • 发布于 2021-09-05 06:00
  • 阅读 ( 177 )

使用logger库-如何在ruby中编写日志消息

在Ruby中使用logger库是跟踪代码何时出错的一种简单方法。当出现错误时,详细说明导致错误的原因可以节省查找错误的时间。随着程序变得越来越大、越来越复杂,您可能需要添加一种写入日志消息的方法。Ruby附带了许多有用...

  • 发布于 2021-09-12 07:28
  • 阅读 ( 195 )

如何在ruby中组合数组(combine arrays in ruby)

...的末尾,用这两个数组的元素创建第三个数组。 或者,使用concat方法(+运算符和concat方法在功能上是等效的)。 如果你正在做很多这样的手术,你可能希望避免这种情况。对象创建不是免费的,这些操作中的每一个都会创...

  • 发布于 2021-09-12 07:29
  • 阅读 ( 216 )

ruby编程语言初学者指南

...称为“Matz”)将该语言设计为足够简单,让初学者可以使用,同时也足够强大,让经验丰富的程序员能够拥有他们需要的所有工具。这听起来很矛盾,但这种二分法要归功于Ruby的纯面向对象设计和Matz从其他语言(如Perl、Smalltal...

  • 发布于 2021-09-12 07:30
  • 阅读 ( 200 )

ruby中的“require”方法

为了创建可重用的组件,即可以在其他程序中轻松使用的组件,编程语言必须能够在运行时顺利导入代码。在Ruby中,require方法用于加载另一个文件并执行其所有语句。这用于导入文件中的所有类和方法定义。除了简单地执行文...

  • 发布于 2021-09-12 23:04
  • 阅读 ( 154 )

使用命令行运行ruby脚本

在真正开始使用Ruby之前,您需要对命令行有一个基本的了解。因为大多数Ruby脚本没有图形用户界面,所以您将从命令行运行它们。因此,您至少需要知道如何导航目录结构,以及如何使用管道字符(如|、<和>)重...

  • 发布于 2021-09-17 03:13
  • 阅读 ( 193 )
夜刀神梦陈
夜刀神梦陈

0 篇文章

相关推荐