博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ruby 数据类型Symbol
阅读量:7072 次
发布时间:2019-06-28

本文共 473 字,大约阅读时间需要 1 分钟。

一.符号创建

符号是Symbol类的实例,使用冒号加一个标识符即可创建符号     

:a:"This is a symno"

 

二.符号字符串相互转换

p :symbol.to_s    #=> "symbol"p 'symbol'.to_sym    #=> :symbol

 

三.符号与字符串的比较

  1. 符号与字符串的比较,优势在于对内存消耗较少。因为每一个字符串都是一个对象,一个字符串每出现一次Ruby就会创建一个String对象,所以使用字符串的开销非常大,而符号则不会
  2. 符号是不可变的,不能对符号的进行增、删、改, 但字符串可以
  3. 符号是唯一的(相同名称的符号object_id是一样的,说明是同一个对象),而字符串不是
  4. 使用场景区分:如果使用字符串的内容,这个内容可能会变化,使用字符串String;如果使用固定的名字或者说是标识符,则需要使用符号Symbol;实际应用中,如枚举值,关键字(散列表关键字,方法的参数)等情况都会选择使用符号

 

转载于:https://www.cnblogs.com/wf0117/p/8908520.html

你可能感兴趣的文章
购物车的原理及实现.(仿京东实现原理)
查看>>
Kotlin 1 包,数据类型,普通类和接口
查看>>
Load和Initialize往死了问是一种怎样的体验?
查看>>
PHPer面试指南-Web 篇
查看>>
[Kernel参数]----/etc/sysctl.conf
查看>>
解决springboot启动失败问题:Unable to start embedded container;
查看>>
我的第一个 package
查看>>
Delphi初学者,向万一老师致敬
查看>>
maven工程自动生成web.xml
查看>>
Window下Eclipse+Tomcat远程调试
查看>>
WinRAR命令
查看>>
iOS图片拉伸技巧
查看>>
横向滚动插件
查看>>
Windows Nginx 教程
查看>>
P2093 [国家集训队]JZPFAR(KDTree)
查看>>
初级程序员面试不靠谱指南(二)
查看>>
POJ 3762 The Bonus Salary! 离散 + 费用流
查看>>
反转链表
查看>>
MFC之MessageBox用法
查看>>
Codeforces 813E - Army Creation
查看>>