arrays - 如何在 ruby 的对象数组中插入一个对象?
问题描述
我需要在数组中打印 uniq 结果。为了测试这一点,我需要在我的数组中插入一个对象。
array = [#<Card id: 394034, cards_config_id: nil>, #<Card id: 394033, cards_config_id: nil>,#<Card id: 394032, cards_config_id: nil>, #<Card id: 394035, cards_config_id: nil>]
我需要插入另一个Card
对象来测试唯一性。像这样的东西array.uniq &:id
我知道这是错误的,但我怎样才能做到这一点?
array << Card id:394034, cards_config_id: nil>
解决方案
您可以简单地执行以下操作,
array = [#<Card id: 394034, cards_config_id: nil>, #<Card id: 394033, cards_config_id: nil>,#<Card id: 394032, cards_config_id: nil>, #<Card id: 394035, cards_config_id: nil>]
array = array | [#<Card id: 394034, cards_config_id: nil>]
您也可以使用设置
require 'set'
set = Set[#<Card id: 394034, cards_config_id: nil>, #<Card id: 394033, cards_config_id: nil>,#<Card id: 394032, cards_config_id: nil>, #<Card id: 394035, cards_config_id: nil>]
set.add(#<Card id: 394034, cards_config_id: nil>)
不允许set
重复
推荐阅读
- tableau-api - 在画面中使用 lat long 计算距离
- java - 休眠@DynamicUpdate
- asp.net-mvc - ASP.NET MVC 数据库表获取空值
- javascript - 用于更改浏览器标签标题的 Javascript 代码不起作用
- python - 我无法使用 python 从给定网站上抓取网络数据
- jenkins - jenkins字符串参数的字符串长度限制是多少
- java - Jsoup 不解析特定的 DIv
- android - Firebase Analytics Log Events
- angular - $event.target.value 对点击事件不起作用
- android - Android Gradle:混合版本会导致运行时崩溃