=begin 数组,是有序的,基于整数引索的任意对象的集合;索引起始为0 -1为最后一个元素=end#数组的用法----如何获取数组中的元素arr = [1, 2, 3, 4, 5, 6]arr[2] #输出第三个数组中的元素:3arr[100] #无法输出超出数组长度的元素:nilarr[-3] #输出倒数组中数倒数第三的元素:4arr[2,3] #输出从第三个元素开始三个长度的元素:[3,4,5]arr[1 .. 4] #输出包括第二个元素到第五个之间的所有元素:[2,3,4,5]arr[1 .. -3] #输出包括正数第二个元素到到倒数第三个元素之间的所有元素:[2,3,4]arr.at(0) #输出数组中第一个元素:1arr.fetch(1) #输出数组中第二个元素:2arr.take(3) #输出数组中前三个元素:[1,2,3]arr.drop(3) #丢弃数组中前三个元素后剩下的元素,不会修改数组本身:[4,5,6]#数组的用法----获取数组的信息arr.length #输出数组中元素的长度(个数):6arr.count #输出数组中元素的个数(长度):6arr.empty? #判断数组是否为空:falsearr.include?(6) #判断该对象是否为数组中的元素:true#修改数组----向数组中增加元素arr = [1, 2, 3, 4]arr.push(5) #向数组末尾插入一个元素:[1,2,3,4,5]arr << 6 #同上,向数组末尾插入一个元素:[1,2,3,4,5,6]arr.unshift(0) #在数组的起始位置插入一个元素:[0,1,2,3,4,5,6]arr.insert(3, "heiheihei") #在数组第三个元素后面插入一个元素,使之成为第四个元素,新元素索引位置为3:[0,1,2,"heiheihei",3,4,5,6]arr[8] = 7 #在索引位置为8的位置插入(修改)一个元素:[0,1,2,"heiheihei",3,4,5,6,7]#修改数组----删减数组中的元素arr = [1, 2, 3, 4, 5, 6]arr.pop #删除数组的最后一个元素:[1,2,3,4,5]arr.shift #删除数组中的第一个元素:[2,3,4,5]arr.delete_at(2) #删除数组中索引位置为2的元素,:[2,3,5]arr.delete(2) #删除数组中的元素2:[3,5]arr = [1, 1, 2, 2, 3, 3, nil]arr.uniq #删除数组中重复的元素并输出,不会修改数组本身:[1,2,3,nil]arr.compact #删除数组中显示出的nil元素并输出,不会修改数组本身:[1,1,2,2,3,3]#数组的用法----遍历数组arr = [1, 2, 3, 4, 5, 6]arr.each{ |x| puts x } #按顺序遍历数组中的元素(方法一): 1\n2\n3\n4\n5\n6\narr.each do |x| puts xend #按顺序遍历数组中的元素(方法二):1\n2\n3\n4\n5\n6\narr.reverse_each { |x| puts x } #逆序遍历数组中的元素:6\n5\n4\n3\n2\n1\narr.map { |x| x * 2 } #接受一个块,对特定的元素进行单独的操作,需要赋值给一个新的变量,不会修改数组本身:[2,4,6,8,10,12]arr.select { |x| x > 4 } #在数组中筛选出值大于4的的元素,需要赋值给一个新的变量,不会修改数组本身:[5,6]arr.reject { |x| x > 4} #在数组中筛掉值大于4的元素,需要赋值给一个新的变量,不会修改数组本身:[1,2,3,4]arr = [1, 2, 3, 4, 3, 2, 1]arr.drop_while { |x| x < 3 } #删除最先一次数组中满足条件的的元素,不会修改数组本身:[3,4,3,2,1]arr.delete_if { |x| x < 3 } #删除数组中所有满足条件的元素:[3,4,3]arr = [1, 2, 3, 4, 3, 2, 1]arr.keep_if { |x| x > 3} #只输出满足条件的元素:[4]