标签:
Ruby
uby on Rails", "Is", "Funny!", "\#{$global}"] ["Hellow", "Ruby", "On", "Rails,", "Ruby on Rails", "Is", "Funny!", "6"]
(1)截取数组的字数组
# 定义一个Range对象 my_range = 1..9 # 将Range对象转换成数组对象 my_array = my_range.to_a p my_array # 从数组的第3个元素开始截取,共截取2个元素 p my_array[2, 2] # 从数组的第3个元素开始截取,截取到第5个元素,包含第5个元素 p my_array[2..4] # 从数组的第3个元素开始截取,截取到第5个元素,不包含第5个元素 p my_array[2...4]
输出:
[1, 2, 3, 4, 5, 6, 7, 8, 9] [3, 4] [3, 4, 5] [3, 4]
(2)为多个数组赋值
# 定义一个Range对象 my_range = 1..9 # 将Range对象转换成数组对象 my_array = my_range.to_a # 从第3个元素开始,一共将2个元素替换成一个字符串元素 my_array[2, 2] = "Ruby" p my_array # 从第3个元素开始,一共将1个元素替换成2个元素 my_array[2, 1] = ["Hello", "World"] p my_array # 将第3个元素、第4个元素替换成7、8、9三个元素 my_array[2..3] = [7, 8, 9] p my_array
打印出:
[1, 2, "Ruby", 5, 6, 7, 8, 9] [1, 2, "Hello", "World", 5, 6, 7, 8, 9] [1, 2, 7, 8, 9, 5, 6, 7, 8, 9]
范围是多个枚举的一种表现形式,创建该枚举形式的范围有两种形式。
(1)值1..值2:定义一个值1到值2的范围,包括值1和值2,也包括值1和值2中间的值。
(2)值1...值2:定义一个值1到值2的范围,包括值1但不包括值2,也包括值1和值2中间的值。
(1)to_a():将该范围转换成一个数组。
(2)include()?(Targetvalue)===(tagetValue):判断该范围是否包含了tagetValue。
(3)min()/begin()/first():求该范围的最小值(第一个值)。
(4)max()/end()/last():求该范围的 最大值(最后一个值)。
以下为常用的迭代器方法:
(1)reject:将该范围转换成一个数组,并剔除掉满足条件的元素。
class Test # 使用...定义范围,则该范围不包括终点 a = 2...10 # 将范围转换成数组,且排除不满足条件的元素 print a.reject {|i| i < 5} puts "\n" end
打印出: [5, 6, 7, 8, 9]
(2)select:将该范围转换成一个数组,只选择满足条件的元素。
class Test # 使用...定义范围,则该范围不包括终点 a = 2...10 # 将范围转换成数组,且只选择满足后面条件的元素 print a.select {|i| i < 5} puts "\n" end
打印出: [2, 3, 4]
(3)each:迭代范围里的每个元素。
class Test # 使用...定义范围,则该范围不包括终点 a = 2...10 # 使用each迭代输出范围里的每个元素 a.each do |ele| puts "当前元素时:" + ele.to_s end end
打印出:
当前元素时:2 当前元素时:3 当前元素时:4 当前元素时:5 当前元素时:6 当前元素时:7 当前元素时:8 当前元素时:9
这一节我们细讲并学完基本数据类型,下一节我们将进入表达式和语句。
标签:
原文地址:http://www.cnblogs.com/Leo_wl/p/5377308.html