相关疑难解决方法(0)

何时在Ruby中使用Struct而不是Hash?

我没有太多的编程经验.但是,对我而言,Struct似乎与Hash有些相似.

  • Struct能做什么?
  • 结构可以做什么,哈希不能做什么?

在谷歌搜索之后,结构的概念在C中很重要,但我对C不太了解.

ruby hash struct

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

如何更改Struct属性的默认值?

根据文档,未设置的Struct属性设置为nil:

unset参数默认为nil.

是否可以为特定属性指定默认值?

例如,对于以下Struct

Struct.new("Person", :name, :happy)
Run Code Online (Sandbox Code Playgroud)

我希望该属性happy默认为true而不是nil.我怎样才能做到这一点?如果我这样做

Struct.new("Person", :name, :happy = true)
Run Code Online (Sandbox Code Playgroud)

我明白了

-:1: syntax error, unexpected '=', expecting ')'
Struct.new("Person", :name, :happy = true)
                                    ^
-:1: warning: possibly useless use of true in void context
Run Code Online (Sandbox Code Playgroud)

ruby

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

标签 统计

ruby ×2

hash ×1

struct ×1