我一直在寻找过去几天如何理解Ruby中的符号.我在谷歌阅读关于Ruby符号的每篇文章,其中大多数都是错误的解释,所以我来到这里,我看到有关于这个主题的一些问题,但是我不明白,抱歉.
根据我的阅读,我理解符号是不可变的和唯一的,因此内存消耗和性能优于常规字符串.
问题#1
生活中的符号目的是为字符串提供相同的利基吗?符号的目的是在没有携带值的情况下作为方便的常量运行,就像之后的部分:它是实际值吗?
问题#2
我什么时候才知道在哪里使用符号?
我会高度评价你自己对符号的解释,而不是链接到谷歌上的文章(我确保我已经读过它了!).
如果你能提供关于符号的更多信息,我也会提供你的时间,因为我根本不理解它们,甚至不存在于:symbol_something,它是参考还是什么?
非常感谢您的帮助!
ruby中的符号是一种有效利用不可变字符串的方法.例如,假设您要使用字符串"my_key"作为哈希键.简单地使用字符串会浪费空间和效率,因为每次指定哈希键"my_key"时,即使字符串值内容相同,您也会在不同的内存位置创建不同的字符串实例!因此,如果您有100个my_hash ['my_key']实例,则您有100个字符串'my_key'的实例.符号不是这样的:my_key.只有一个例子:my_key,无论你多少次使用它!
您应该使用通常使用不可变字符串作为标识符的符号.
| 归档时间: |
|
| 查看次数: |
227 次 |
| 最近记录: |