Ruby 手册 | 04 - 常量、变量和运算符

216 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第4天,点击查看活动详情

一、常量和变量

常量和变量可以看做是对存储在内存中的数据所起得一个名字,常量和变量的值指的就是所引用的数据,大多数语言中,常量是指值是不变的,而变量则是可以改变的。

Ruby 中常量是以大写字母开头,变量一般以小写字母开头。由于 Ruby 是动态解释型语言,所以 Ruby 中变量和常量定义的时候是无须指定变量或者常量类型的,只需要通过 = 将指定的值赋值给常量或者变量名即可。

变量和常量在第一次赋值时被声明和常见,只有可以自由更改变量类型。

MY_BLOG_URL = "https://juejin.cn/user/3329771602453447"
age = 18
nick_name = "hodge"

MY_BLOG_URL 字母全部大写为常量,值得是个人主页的 URL 地址,这个一般也是不变的。但其实 Ruby 中的变量是可以修改的,但是会有警告提示。age 和 nick_name 是变量,可以修改变量值或者类型。

图片.png

Ruby 中的基本数据类型

数据会以某种类型存储在内存中,比如上面提到的年龄是整数和浮点数类型,名字是字符串类型。这两种数据类型是最常用的数据类型。

Ruby 中的基本数据类型包括数字、字符串、数组、符号、散列表、区间和正则表达式。Ruby 的基本类型本质上都是以类的形式来存储的,Ruby 中的整数类型是 Integer 对象的实例,字符串是 String 类型的对象,数组是 Array 类型的对象等,这也是 Ruby 中一切皆对象的体现。

Ruby 中的基本数据类型覆盖了常见的数据类型,字符串类和数组提供了丰富的操作方法支持,符号、散列表和区间则是具有比较特殊用途的类型,熟练应用这些数据类型,是 Ruby 代码的基础。

二、运算符

Ruby 中运算符按照优先级从高到低顺序如下:

运算符说明
[]、[]=数组下标、数组元素赋值
**幂运算
!、~、+、-非、位非、一元加、一元减
*、/、%乘、除、模
+、-加、减
>>、<<右移、左移
&、 |位与
^、|位异或、异或
<=、<、>、>=比较运算符 小于等于,小于,大于,大于等于
==、<==>、===、=、!=、!各种相等的判断
=,+=,%=,-=,/=,>>=, <<= ....各种赋值运算符
&&,||逻辑与,逻辑或
? :三元条件运算符
defined?检查是否定义
not,and,or逻辑非、逻辑与,逻辑或
begin/endblock 表达式
if unless while until表达式修饰符

图片.png

Ruby 中的许多运算符都是由对象的方法调用来实现的。