`
hanqingwxf2008
  • 浏览: 51285 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Symbol

    博客分类:
  • ruby
 
阅读更多

Symbol

        在Ruby中,有一种奇怪的对象,在一个变量前加一个冒号“:”,这就是Ruby的Symbol,Symbol是Symbol类的 实例,Symbol形式上和字符串很像,但是两者却有区别,首先Symbol不是String类对象,String类的很多方法不能作用到Symbol上 面,然后一个显著的区别就是只要给定一个名字,就唯一确定了一个Symbol对象,而字符串即使是相同,也是不同的对象,怎么理解这句话,看下边的示例:

        

        稍作解释:前三个:test或者:”test”是Symbol对象,其object_id都是86600,说明他们是同一个对象,内存中只存在一份;后三个是”test”字符串的对象,其object_id都互不相同,说明他们是三个不同的对象。

        Symbol和字符串可以互相转换Symbol通过to_s方法转换成为字符串,字符串可以通过to_sym或者intern方法转换成为Symbol。

        为什么要有Symbol呢?节约内存,相比String对象,Symbol占用内存较少,他存于Ruby的符号表中,并且不会出现多个的副本,可以用来做哈希表的关键字,也经常用作类中可读可写的属性(例如:attr_accessor :user)。

分享到:
评论

相关推荐

    Symbol条码枪使用手册

    Symbol 条码枪 LS4208 使用手册 Symbol LS4208 是一款高性能的条码枪,广泛应用于零售、物流、医疗、制造等行业。本手册提供了 Symbol LS4208 的使用指南,帮助用户快速上手使用该设备。 1. Symbol LS4208 概述 ...

    symbol 刷机USB驱动

    "Symbol"是摩托罗拉解决方案公司的一个品牌,主要生产工业级条形码扫描器、移动数据终端等设备,这些设备在零售、物流、医疗等领域广泛应用。"MC系列"是Symbol推出的一系列坚固型移动计算机,它们配备有各种操作系统...

    字体-Symbol-Tiger-Expert

    "字体-Symbol-Tiger-Expert"这个主题聚焦于一种特定的字体,用于解决在Windows 7系统中因字体文件缺失而导致数学符号无法显示的问题。Symbol字体是一种特殊的符号字体,通常包含了各种数学、化学和科学符号,以及...

    wps_symbol_fonts.zip

    标题 "wps_symbol_fonts.zip" 暗示了这是一个针对WPS Office软件的补丁或资源包,专门解决在Linux操作系统环境下WPS缺少特定字体的问题。这个压缩包包含的字体文件,可能是为了确保WPS在Linux系统中能够正确显示某些...

    解决error LNK2001: unresolved external symbol

    解决 error LNK2001: unresolved external symbol 在编译VC项目时,经常会遇到error LNK2001: unresolved external symbol的错误,这个错误是由于缺少某些库文件而引起的。在这里,我们总结了三种常见的情形,并...

    openGauss Symbol(openGauss-3.0.0-openEuler-64bit-symbol.tar.gz)

    《深入解析openGauss Symbol:基于openGauss-3.0.0-openEuler-64bit-symbol.tar.gz》 openGauss是一个开源的关系型数据库管理系统,由华为公司主导开发,旨在提供高性能、高可用性、高安全性的企业级数据库解决方案...

    symbol-4278设置手册

    《symbol-4278设置手册》是一份详尽的指南,主要针对Symbol公司的4278系列条形码扫描器的配置与操作。Symbol Technologies是条形码和无线数据通信技术领域的领导者,其产品广泛应用于零售、物流、医疗保健等众多行业...

    openGauss Symbol(openGauss-3.0.0-CentOS-64bit-symbol.tar.gz)

    《深入理解openGauss Symbol:探索3.0.0版本的细节》 openGauss,一个开源、高性能的关系型数据库管理系统,旨在为大数据时代提供可靠的数据存储与处理解决方案。openGauss-3.0.0-CentOS-64bit-symbol.tar.gz 文件...

    SYMBOL扫描枪设置手册

    SYMBOL扫描枪设置手册 一、扫描枪设置 扫描枪设置是 Symbol LS2208 条码扫描器的重要配置,以下是扫描枪设置的相关知识点: 1.1 通过键盘口与主机端口连接 * 通过扫描下面的条码来选择键盘接口的类型。 * 忽略...

    SYMBOL FACTORY 图符集非常有用

    "SYMBOL FACTORY 图符集" 是一个专为制作自动化方案设计的资源库,其中包含了大量的工业图符,这些图符对于理解和构建自动化系统来说至关重要。这个图符集旨在提高工作效率,帮助工程师们快速、清晰地绘制出各种控制...

    Symbol 常用设置条码.DOC

    Symbol(现已被Zebra Technologies收购)是一家知名的条码扫描设备制造商,其产品以其性能稳定、功能强大而著称。本篇文章将详细阐述Symbol条形码扫描器的一些常用设置,帮助用户更好地理解和操作这些设备。 1. **...

    工控图库工具symbol-factory-2.0

    《工控图库工具symbol-factory-2.0详解及应用》 在自动化工程和工业控制领域,图形化界面的设计与构建是至关重要的。Symbol Factory 2.0是一款专为工控系统设计的图库工具,它为组态王软件提供强大的辅助功能,帮助...

    symbol LS4278 说明书 .pdf

    ### Symbol LS4278 扫描枪设置说明知识点概览 #### 一、产品概述 **Symbol LS4278**是一款高性能的手持式条形码扫描枪,由Symbol Technologies Inc.生产制造。该设备设计用于提高工作效率,并且具备优秀的可靠性和...

    Symbol EDA设备条码读码Demo2

    上一版本“Symbol EDA设备条码读码Demo”读码API命名空间为"Symbol.Barcode.Design.dll" 4. 发声API命名空间为“Symbol.Audio.dll” 5. 适合于MC50、MC3090\MC3190、MC55xx、MC7094、MC9090等设备 Email:baifucn...

    Symbol Factory 2.0组态图库,可设置资源缩放

    《Symbol Factory 2.0 组态图库:资源缩放与应用详解》 Symbol Factory 2.0 是一款专为工控领域设计的高效组态图库软件,其核心特性在于提供丰富的图形资源,并支持用户自定义设置,如修改底色和调整资源的缩放比例...

    Motorola Symbol 条码扫描枪 Windows 7/2008R2 驱动

    Motorola Symbol 条码扫描枪的驱动。支持: Windows 2008 R2 Windows 2008 R2, 64bit Windows 7, 64 bit Windows 7, 32 bit Windows Vista, 32 bit Windows Vista, 64 bit Windows XP, 32 bit 使用方法: 1. 在...

    symbol factory(wincc 图库增强 支持64位)

    《Symbol Factory:WinCC 图库增强,赋能64位系统工控应用》 在工业自动化领域,西门子的WinCC(Human Machine Interface,人机界面)是一款广泛使用的监控和数据采集系统。它允许用户通过可视化界面来控制和监控...

    讯宝symbol DS6708使用指南

    ### 讯宝symbol DS6708使用指南 #### 一、概述 讯宝Symbol DS6708是一款高性能的手持式条码扫描器,由摩托罗拉公司生产。这款扫描器广泛应用于零售业、医疗保健、物流及制造业等多个领域。通过支持多种接口如RS-232...

    Symbol DS3408条码扫描器设置手册

    ### Symbol DS3408条码扫描器设置手册知识点概览 #### 一、设备概述 **Symbol DS3408条码扫描器**是一款由Symbol Technologies, Inc.(现为Zebra Technologies旗下品牌)制造的专业级条码扫描设备。该扫描器能够...

    Symbol MC1000开发手册

    ### Symbol MC1000 开发手册核心知识点解析 #### 一、版权与许可声明 在文档开头,Symbol Technologies, Inc. 对该手册进行了明确的版权保护声明,并规定了使用条款: - **版权归属**:所有版权归属于Symbol ...

Global site tag (gtag.js) - Google Analytics