我创建了一个地图,并按以下方式从数据库中获取键的值
def data
myMaps.map do |Mymap|
{
key1: value1,
key2: value2,
kay3: value3
}
end
end
如果我必须检查值1是否为零,那么正确的语法是什么? 我只想在值不是nil的情况下分配键值对。
答案 0 :(得分:1)
首先,您应该查看#map here的文档。仅仅从你的问题来看,你还不清楚你要做什么。您的方法将假设myMaps
是一个数组,然后将哈希映射到每个值,具有三个键和三个值。我不是百分百肯定,但我认为你想要的更像是:
myMaps = { key2: value2, key3: value3 }
myMaps[key1] = value1 unless value1.nil?
答案 1 :(得分:0)
当值为nil时,为Hash键赋值的方法如下:
hash[:key] ||= "value"
我不确定如何正确回答你的问题,因为它还不太清楚。
首先,Ruby中没有Map数据类型。您可能称之为Map的实际上是一个哈希。但是,map
没有Hash
方法,仅针对Array
,因此我假设myMaps
是Array
,但没有证据表明此类变量是定义。