如何将数组中的每个字符串元素转换为ascii并将结果存储在新数组中?

时间:2016-05-14 18:37:00

标签: ruby

这是我的第一篇文章,但我正在尝试对数组中的每个元素执行一个方法,并将每个结果的输出存储到一个新数组中。我正在使用ascii转换。每当我运行此代码时,我得到“nil的代码点的未定义方法:NilClass”我是否错误地使用了代码点?

def map(array, method)
    result_array = []

    array.each do |element|
        value = element.send(method) # Call the method on the object
        result_array.push(value)
    end

    return result_array
end

def method(x_string)
    x_ascii = x_string.codepoints.to_a
    return x_ascii
    ###Need to finish here
end

Tigers = ['Bengal', 'Asian', 'Burmese', 'Mongolian', 'Cambodian']
result_array = map(Tigers, method)
puts result_array

1 个答案:

答案 0 :(得分:2)

这对我有用:

Tigers = ['Bengal', 'Asian', 'Burmese', 'Mongolian', 'Cambodian']

result_array = Tigers.map do |word|
  word.codepoints.to_a
end

puts result_array