Ruby 教程 之 Ruby 运算符 10

简介: Ruby 运算符

Ruby 教程 之 Ruby 运算符 10

Ruby 运算符

Ruby 支持一套丰富的运算符。大多数运算符实际上是方法调用。例如,a + b 被解释为 a.+(b),其中指向变量 a 的 + 方法被调用,b 作为方法调用的参数。

对于每个运算符(+ - / % * & | ^ << >> && ||),都有一个相对应的缩写赋值运算符(+= -= 等等)。

Ruby 点运算符 "." 和双冒号运算符 "::"
你可以通过在方法名称前加上类或模块名称和 . 来调用类或模块中的方法。你可以使用类或模块名称和两个冒号 :: 来引用类或模块中的常量。

:: 是一元运算符,允许在类或模块内定义常量、实例方法和类方法,可以从类或模块外的任何地方进行访问。

请记住:在 Ruby 中,类和方法也可以被当作常量。

你只需要在表达式的常量名前加上 :: 前缀,即可返回适当的类或模块对象。

如果 :: 前的表达式为类或模块名称,则返回该类或模块内对应的常量值;如果 :: 前未没有前缀表达式,则返回主Object类中对应的常量值。 。

下面是两个实例:

MR_COUNT = 0 # 定义在主 Object 类上的常量
module Foo
MR_COUNT = 0
::MR_COUNT = 1 # 设置全局计数为 1
MR_COUNT = 2 # 设置局部计数为 2
end
puts MR_COUNT # 这是全局常量
puts Foo::MR_COUNT # 这是 "Foo" 的局部常量

第二个实例:

CONST = ' out there'
class Inside_one
CONST = proc {' in there'}
def where_is_my_CONST
::CONST + ' inside one'
end
end
class Inside_two
CONST = ' inside two'
def where_is_my_CONST
CONST
end
end
puts Inside_one.new.where_is_my_CONST
puts Inside_two.new.where_is_my_CONST
puts Object::CONST + Inside_two::CONST
puts Inside_two::CONST + CONST
puts Inside_one::CONST
puts Inside_one::CONST.call + Inside_two::CONST

目录
相关文章
|
Linux
FFmpeg开发笔记(三十四)Linux环境给FFmpeg集成libsrt和librist
《FFmpeg开发实战》书中介绍了直播的RTSP和RTMP协议,以及新协议SRT和RIST。SRT是安全可靠传输协议,RIST是可靠的互联网流传输协议,两者于2017年发布。腾讯视频云采用SRT改善推流卡顿。以下是Linux环境下为FFmpeg集成libsrt和librist的步骤:下载安装源码,配置、编译和安装。要启用这些库,需重新配置FFmpeg,添加相关选项,然后编译和安装。成功后,通过`ffmpeg -version`检查版本信息以确认启用SRT和RIST支持。详细过程可参考书中相应章节。
447 1
FFmpeg开发笔记(三十四)Linux环境给FFmpeg集成libsrt和librist
|
存储 弹性计算 对象存储
阿里云对象存储OSS的预留空间是指什么?
阿里云OSS预留空间是预付费存储产品,提供成本优化,通过锁定存储容量来享受折扣。它仅抵扣标准存储(本地冗余)和ECS快照费用。例如,为节省600GB存储成本,可购买500GB通用预留空间和100GB标准-本地冗余存储包。
557 1
|
人工智能 监控 算法
AI计算机视觉笔记二十 八:基于YOLOv8实例分割的DeepSORT多目标跟踪
本文介绍了YOLOv8实例分割与DeepSORT视觉跟踪算法的结合应用,通过YOLOv8进行目标检测分割,并利用DeepSORT实现特征跟踪,在复杂环境中保持目标跟踪的准确性与稳定性。该技术广泛应用于安全监控、无人驾驶等领域。文章提供了环境搭建、代码下载及测试步骤,并附有详细代码示例。
1587 1
|
存储 数据库 虚拟化
无缝过渡:企业级服务器迁移的策略与最佳实践
【10月更文挑战第4天】随着企业数字化转型的加速,服务器迁移成为企业IT基础设施升级的重要环节。本文从架构与规划的视角,探讨了企业级服务器迁移的策略与最佳实践,旨在帮助企业实现无缝过渡,降低迁移风险,提高迁移效率。
969 4
|
弹性计算 运维 监控
【最佳实践】主机场景下如何使用ilogtail采集超大规模文件
目标读者数字化系统开发运维(DevOps)工程师、稳定性工程师(SRE)、可观测平台运维人员等。使用场景客户的某些场景下,业务拆分的比较细,每个业务会定时输出一个日志文件(比如每小时输出一个文件),那么在一台机器上,可能会产生大量的日志文件。由于某些原因,用户不想在业务服务器上安装采集端,因此采用比...
1030 0
【最佳实践】主机场景下如何使用ilogtail采集超大规模文件
|
安全 网络安全 数据中心
网络进阶学习:单臂路由(灵魂五问)
网络进阶学习:单臂路由(灵魂五问)
1305 0
|
计算机视觉
【事件图像】RGB Image conversion to event Image
【事件图像】RGB Image conversion to event Image
【事件图像】RGB Image conversion to event Image
|
人工智能 架构师 物联网
阿里云的认证多少分通过?没通过可以补考吗?
阿里云认证是阿里云发行且推广的云技术人才认证,在行业内有很大的知名度,且广泛受认可,很多人在毕业刚踏入社会的时候,都会选择考取这个认证,来增加自己的职业竞争力,以求获得更好的发展。
阿里云的认证多少分通过?没通过可以补考吗?
|
Java Spring 容器
springboot原理实战(9)--@EnableAutoConfigration注解使用和原理
springboot原理实战(9)--@EnableAutoConfigration注解使用和原理
362 0
springboot原理实战(9)--@EnableAutoConfigration注解使用和原理
|
Web App开发 安全 大数据
阿里云acp认证报名方法 阿里云acp认证考试相关答疑
云服务已经成为当前互联网技术的重点发展方向,在我国以阿里云为代表的云服务产业每年都在快速增长。这不仅提供了大量的就业岗位,也为从业人员打造了良好的职业发展道路。阿里云相对于其他厂商有更良好的生态圈,其上下游产业对于专业人员的需求量更大,因此持有阿里云认证的从业人员在就业上更具优势。今天就介绍阿里云acp认证报名方法,并回答一些考生关注的问题。
566 0
阿里云acp认证报名方法 阿里云acp认证考试相关答疑