相关疑难解决方法(0)

Array#each vs. Array #map

hash = { "d" => [11, 22], "f" => [33, 44, 55] }

# case 1
hash.map {|k,vs| vs.map {|v| "#{k}:#{v}"}}.join(",")
=> "d:11,d:22,f:33,f:44,f:55"

# case 2
hash.map {|k,vs| vs.each {|v| "#{k}:#{v}"}}.join(",")
=> "11,22,33,44,55"
Run Code Online (Sandbox Code Playgroud)

唯一的区别是案例1使用vs.map,案例2使用vs.each.

这里发生了什么?

ruby arrays enumerable

89
推荐指数
3
解决办法
5万
查看次数

map,each和collect之间有什么区别?

在Ruby中,有没有的功能有什么区别each,mapcollect

ruby enumerable

60
推荐指数
2
解决办法
4万
查看次数

收集和每个之间的区别?

使用数组收集和每个数据之间的主要区别是什么?偏爱?

some = []

some.collect do {|x| puts x}

some.each do |x|
    puts x
end
Run Code Online (Sandbox Code Playgroud)

ruby collections each

12
推荐指数
2
解决办法
7188
查看次数

Ruby:在每个,map,inject,each_with_index和each_with_object之间进行选择

当我多年前开始编写Ruby时,我花了一些时间来理解每个地图之间的区别.当我发现所有其他EnumerableArray方法时,情况会变得更糟.

在官方文档和许多 StackOverflow 问题的帮助下,我慢慢开始了解这些方法的作用.

以下是让我更长时间理解的内容:

  • 我为什么要使用一种方法?
  • 有没有指导方针?

我希望这个问题不是重复的:我对"为什么?"更感兴趣.比"什么?" 或"如何?",我认为它可以帮助Ruby新人.

ruby arrays hash enumerable

11
推荐指数
2
解决办法
2438
查看次数

"each","foreach","collect"和"map"之间有什么区别?

似乎有很多方法可以在Ruby中循环使用Enumerable.有没有之间的差异each,foreachcollect,map或其他类似的方法呢?

或者有什么理由我不应该在某些情况下使用某些方法?

ruby iteration enums iterator loops

3
推荐指数
1
解决办法
2960
查看次数

为什么这个赋值和每个循环只返回1个属性而不是我期望的整个对象?

我的Node模型上有一个方法如下:

  def users_tagged
    @node = self
    @tags = @node.user_tag_list
    @users = @tags.each do |tag|
      User.find_by email: tag
    end
  end
Run Code Online (Sandbox Code Playgroud)

我想要发生的是@users对象是一个User记录集合,但它只返回一个电子邮件地址列表.

这就是这个Node对象的样子:

> n
=> #<Node id: 6, name: "10PP Form Video", family_tree_id: 57, user_id: 57, media_id: 118, media_type: "Video", created_at: "2015-03-09 20:57:19", updated_at: "2015-03-09 20:57:19", circa: nil, is_comment: nil>
> n.user_tags
=> [#<ActsAsTaggableOn::Tag id: 4, name: "gerry@test.com", taggings_count: 1>, #<ActsAsTaggableOn::Tag id: 3, name: "abc@test.com", taggings_count: 1>]
[135] pry(main)> n.user_tag_list
=> ["gerry@test.com", "abc@test.com"] …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails ruby-on-rails-4

1
推荐指数
1
解决办法
35
查看次数

为什么收集和每个方法与succ方法的工作方式不同?

["H", "A", "L"].collect {|x| x.succ } # => ["I", "B", "M"]

["H", "A", "L"].each {|x| x.succ } # => ["H", "A", "L"]
Run Code Online (Sandbox Code Playgroud)

造成输出差异的原因是什么?

succ方法递增一个字符串.

ruby

0
推荐指数
1
解决办法
64
查看次数

Ruby数组:更改字符串元素格式

我有一个字符串数组,其中包含" firstname.lastname "字符串:

customers = ["aaa.bbb", "ccc.ddd", "www.uuu", "iii.oooo", ...]
Run Code Online (Sandbox Code Playgroud)

现在,我想通过删除" . "并使用空格来传输数组中每个元素的字符串格式.那是我想要的数组:

customers = ["aaa bbb", "ccc ddd", "www uuu", "iii oooo", ...]
Run Code Online (Sandbox Code Playgroud)

最有效的方法是什么?

- - - - - - - - 更多 - - - - - - - - - -

而关于我的情况下,如何在这里

ruby ruby-on-rails

0
推荐指数
1
解决办法
1389
查看次数