如何在数组中循环哈希

时间:2016-08-02 21:02:54

标签: arrays ruby loops hash

我需要在代码中使用循环,以便提示用户使用" Name?"三次,每个答案都存储为数据数组中的新哈希。每个答案还应该为其生成一个新的随机数和一封电子邮件。

我需要puts data输出所有三个哈希值及其内容。我尝试过使用3.times do,但我遇到了麻烦:

data = Array.new()

puts "Name?, eg. Willow Rosenberg"
name = gets.chomp
number = rand(1000..9000) + 1
    data = [
        {
        name: name,
        number: number,
        email: name.split(' ').last + number.to_s[1..3] + "@btvs.com"
        }
    ]

puts data

1 个答案:

答案 0 :(得分:1)

data = []

3.times do
  puts "Name?, eg. Willow Rosenberg"
  name = gets.chomp
  number = rand(1000..9000) + 1

  hash = {
    name: name,
    number: number,
    email: name.split(' ').last + number.to_s[1..3] + "@btvs.com"
  }

  data << hash
end

puts data