编程C,C ++,Java,PHP,Ruby,图灵,VB
计算机科学加拿大 
编程C,C ++,Java,PHP,Ruby,图灵,VB  

用户名:   Password: 
 登记登记   

 Wiki.Wiki.   博客博客   搜索搜索   图灵图灵   聊天室  成员成员 
 哈希......
指数 -> 编程,Ruby. -> 红宝石的帮助
查看上一个主题 可打印的版本下载主题订阅本主题私人信息刷新页面 查看下一个主题
作者 信息
索勒布




邮政发布: 2006年12月14日星期四7:16 AM  帖子主题:哈希......

我对红宝石有点新,我目前正在努力追哈。
我可以从头开始创建一个哈希,因为2 =>“机器人”和我想要做的一切都是读取一个TXT然后创建一个信息的哈希。
即,它说
1 John Smith 25英国
2弗雷德奥尼尔31英国
我想要它在哈希中,我有几个1岁的约翰,史密斯,25和英国和2岁和Fred的数据。
我现在可以获得最多的是刚刚取出其中一个数据并将其推成一个字符串。所有尝试哈希都失败了......
我该怎么办?
赞助
赞助
赞助
赞助
索勒布




邮政发布: 2006年12月14日星期四上午8:11  帖子主题:(没有主题)

嗯无法编辑......

我的意思基本上是我想创建一个2D阵列,我可以以某种方式在代码中放入任何代码与比较Natioanlity(这两个人英国)相关的代码。

我可以将一个值传递到一个数组中,所以对于1,它会给我约翰。
虽然似乎接受了1 =>史密斯无论如何,我无法检索史密斯。
rdrake.




邮政发布: 2006年12月14日星期四:下午12:37  帖子主题:Re:Hashes ...

SORB写道:
我对红宝石有点新,我目前正在努力追哈。
我可以从头开始创建一个哈希,因为2 =>“机器人”和我想要做的一切都是读取一个TXT然后创建一个信息的哈希。
即,它说
1 John Smith 25英国
2弗雷德奥尼尔31英国
我想要它在哈希中,我有几个1岁的约翰,史密斯,25和英国和2岁和Fred的数据。
我现在可以获得最多的是刚刚取出其中一个数据并将其推成一个字符串。所有尝试哈希都失败了......
我该怎么办?
有些东西告诉我一个哈希不是你想要的....哈希存储一个值,但它给我们一个很好的漂亮名称,以便访问该价值。例如,采取这一点。
代码:
IRB.(main):005:0> colour = {"favourite" => "green", "leastfav" => "pink"}
=> {"leastfav"=>"pink", "favourite"=>"green"}
IRB.(main):006:0> puts "我最喜欢的颜色是#{color ["favourite"}虽然我最不喜欢的是#{color ["leastfav"]}."
我最喜欢的颜色是绿色,而我最不喜欢的是粉红色。
=> nil
基本上,哈希是一个具有命名索引与一个编号的花式阵列。

您可能潜在的是存储哈希内部的所有信息,然后创建一个哈希数组。例如,采取这一点。
代码:
IRB.(main):007:0>lots_of_info = array.new.new.
=> []
IRB.(main):008:0> lots_of_info[0] = {"id" => 1, "name" => "John Smith", "age" => 25, "location" => "UK"}
=> {"name"=>"John Smith", "id"=>1, "age"=>25, "location"=>"UK"}
IRB.(main):009:0> lots_of_info[1] = {"id" => 2, "name" => "Fred O'Neill", "age" => 31, "location" => "UK"}
=> {"name"=>"Fred O'Neill", "id"=>2, "age"=>31, "location"=>"UK"}
IRB.(main):010:0> lots_of_info[0]["name"]
=> "John Smith"
现在我不是说这是最好的解决方案,只是说如果你愿意,可以完成 微笑.
WTD.




邮政发布: 2006年12月14日12:46下午12:46  帖子主题:(没有主题)

就像是...?

注意:我这样做是因为我非常疑问,Ruby是为学校分配的。

代码:
my_hash = {}

#遍历每一行。
IO.Foreach.("my-file") do |line|
   #将行拆分为空格上的数组。
   info = line.split(/\s+/)
   
   #抓住第一块信息。 另外,转换为整数。
   key = info[0].to_i
 
   # The name.
   name = "#{name [1]}#{name [2]}"

   # Age.
   age = info[3]

   # Location.
   location = name[5]

   #创建数据的哈希值。
   info = {:name => name, :age => age, :location => location}

   #把那个哈希放入主哈希。
   my_hash[key] = info
结尾


然后你可以用这样的东西来获得弗雷德的年龄:

代码:
my_hash [2] [:age]
从上一个显示帖子:   
   指数 -> 编程,Ruby. -> 红宝石的帮助
查看上一个主题 告诉一个朋友可打印的版本下载主题订阅本主题私人信息刷新页面 查看下一个主题

11  [ 4 Posts ]
跳到:   


Style:  
搜索: