程序经常需要管理变量集合。例如,管理日历的程序必须有一周的天数列表。每天必须存储在一个变量中,它们的列表可以存储在一个数组变量中。通过这个数组变量,您可以访问每一天。
创建空数组
您可以通过创建一个新的数组对象并将其存储在一个变量中来创建一个空数组。这个数组将为空;您必须用其他变量填充它才能使用它。如果要从键盘或文件中读取内容列表,这是创建变量的一种常见方法。
在下面的示例程序中,使用array命令和赋值运算符创建一个空数组。从键盘上读取三个字符串(字符的有序序列)并“pushed”或添加到数组的末尾。
#!/usr/bin/env ruby array = Array.new 3.times do str = gets.chomp array.push str end
使用数组文字来存储已知信息
数组的另一个用途是存储编写程序时已经知道的内容的列表,例如星期几。要将星期几存储在数组中,可以创建一个空数组,并像前面的示例那样将它们一个接一个地追加到数组中,但是有一种更简单的方法。可以使用数组文字。
在编程中,“literal”是一种内置在语言本身中的变量类型,它有特殊的语法来创建它。例如,3是一个数字文字,而“Ruby”是一个字符串文字。数组文字是用方括号括起来并以逗号分隔的变量列表,如[1,2,3]。注意,任何类型的变量都可以存储在数组中,包括同一数组中不同类型的变量。
下面的示例程序创建一个包含星期几的数组并将其打印出来。使用数组文字,并使用每个循环来打印它们。注意,每一个都不是Ruby语言内置的,而是数组变量的函数。
#!/usr/bin/env ruby days = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] days.each do|d| puts d end
使用索引操作符访问各个变量
除了对数组进行简单的循环(按顺序检查每个单独的变量)之外,还可以使用index操作符从数组中访问单独的变量。index操作符将获取一个数字并从数组中检索一个变量,该变量在数组中的位置与该数字匹配。索引号从0开始,因此数组中的第一个变量的索引为0。
例如,要从数组中检索第一个变量,可以使用数组[0],要检索第二个变量,可以使用数组[1]。在下面的示例中,名称列表存储在数组中,并使用index操作符检索和打印。索引操作符还可以与赋值操作符组合使用,以更改数组中变量的值。
#!/usr/bin/env ruby names = [ "Bob", "Jim", "Joe", "Susan" ] puts names[0] # Bob puts names[2] # Joe # Change Jim to Billy names[1] = "Billy"
问题内容: 我正在为学校进度设计基于文本的冒险游戏。我将每个“级别”设置为一个类,并将每个可探索区域(节点)设置为相应类中的一个方法。 困扰我的是从一个节点移动到另一个节点的代码。由于每个节点最多连接四个其他节点,因此我必须在每种方法中重复一个极为相似的代码块。 我更愿意做的是在每个节点的开头包含一个方法数组,如下所示: 然后将该数组发送到通用方法,然后将播放器发送到正确的节点: 我简化了代码,但
在数组的属性和方法这一小节中我们学习到了如何查看数组的大小、维数(秩)、元素的数据类型、每个元素的大小等等。这一小节将详述如何从数值范围创建特殊数组,比如指定间隔的等差数列型数组、等比数列型数组等。 1. 创建等间隔序列数组 通常定义一个等间隔序列数组(即等差数组),需要指定某些具体要素,例如起始值、终止值、步长、样本数量等。主要功能类似于 Python 内置的 range 函数,但是返回的是一个
本文向大家介绍Java创建数组的几种方式总结,包括了Java创建数组的几种方式总结的使用技巧和注意事项,需要的朋友参考一下 1、一维数组的声明方式: type[] arrayName; 或 type arrayName[]; 附:推荐使用第一种格式,因为第一种格式具有更好的可读性,表示type[]是一种引用类型(数组)而不是type类型。建议不要使用第二种方式 下面是典型的声明数组的方式: 注:J
本文向大家介绍在Bash脚本中创建和使用数组方法总结,包括了在Bash脚本中创建和使用数组方法总结的使用技巧和注意事项,需要的朋友参考一下 在Bash中定义一个数组 有两种方法可以在bash脚本中创建新数组。第一个是使用declare命令来定义一个Array。此命令将定义名为test_array的关联数组。 $ declare -a test_array 还可以通过分配元素来创建数组。 $ tes
本文向大家介绍Ruby生成随机数的方法总结,包括了Ruby生成随机数的方法总结的使用技巧和注意事项,需要的朋友参考一下 数字实际上不是随机的 没有一台计算机能纯粹通过计算产生真正的随机数。它们能做的最好的事情就是生成伪随机数,伪随机数是一组看起来随机但实际上不是随机的数字。 对于人类观察者来说,这些数字确实是随机的。不会有短的重复序列,而且,至少对人类观察者来说,它们是完全随机的。但是,如果有足够
本文向大家介绍Ruby中的方法(函数)学习总结,包括了Ruby中的方法(函数)学习总结的使用技巧和注意事项,需要的朋友参考一下 1、Ruby中方法名和变量名的命名规则一样(以小写字母开头,单词之间的分隔使用“_”,),不过可以在方法名后边带上!(重磅方法)或者?(布尔类型返回值)。 2、方法的参数请使用(),参数都是局部变量,可以为这些参数设置默认值,带“*”的参数是可选动态参数,可以传入一个或者