Ruby对象、变量和常量
Ruby操作的数据主要有部分:对象、类、变量、常量.
对象
在Ruby中表示数据的基本单位称为对象,在Ruby中一切都是对象.
经常使用对象:
- 数值对象
2、3.14、-5等表示数字的对象,另外还有矩阵、复数、素数、公式的对象. - 字符串对象
“hello world”、”你好”等表示文字的对象 - 数组对象、散列对象
表示多个数据的集合多度系 - 正則表達式对象
正則表達式匹配模式的对象 - 时间对象
比方”2016年1月1日13点”等表示时间的对象 - 文件对象
对文件进行读写操作的对象 - 符号对象
用于识别方法等名称的标签的对象.
类
类(class)就是对象的种类,对象的特性是由类决定的。
| 对象 | 类 |
|---|---|
| 数值 | Numberic |
| 字符串 | String |
| 数组 | Array |
| 散列 | Hash |
| 正則表達式 | Regexp |
| 文件 | File |
| 符号 | Symbol |
某个类的对象也就是某个类的实例(instance)
变量
变量就是对象的名片。Ruby中有四种类型的变量:
- 局部变量(local variable)
- 全局变量(global variable)
- 实例变量(instance variable)
- 类变量 (class variable)
变量的命名方式:
| 变量类型 | 命名方式 |
|---|---|
| 局部变量 | 以英文字母或者下划线(_)开头 |
| 全局变量 | 以$开头 |
| 实例变量 | 以@开头 |
| 类变量 | 以@@开头 |
局部变量和全局变量
局部变量在程序中的有效范围是有效的,在程序某个地方声明的变量名,在其它地方也能够使用。与之相应的是全局变量,全局变量在程序的不论什么地方都是统一个变量。
因为全局变量的值在不论什么地方都有可能被改动。在规模较大大程序中使用会添加程序不必要的复杂度,阅读程序和改动程序会带来麻烦,隐藏一般不使用或少用全局变量。
常量
常量以酬谢英文字母开头,常量一旦赋值就不能够再被改动。比方ruby的执行版本号(RUBY_VERSION)、执行平台(RUBY_PLATFORM)、命令行參数数组(ARGV)等。都是Ruby提前定义好的常量。
保留字
保留字不能用作变量名,否则会报错。
ruby中的保留字:
| LINE | ENCODING | FILE | BEGIN | END |
|---|---|---|---|---|
| =begin | =end | alias | and | begin |
| defined? | do | else | elsif | END |
| ensure | false | for | if | in |
| module | next | nil | not | or |
| redo | rescue | retry | return | self |
| super | then | true | undef | unless |
| until | when | while | yield |
Ruby对象、变量和常量的更多相关文章
- Python--前端基础之JavaScript(JS的引入方式,JS的变量、常量和标识符,JS的数据类型,运算符,流程控制,JavaScript的对象)
JavaScript介绍 JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互. JavaScript是浏览器解释执行的,前端脚 ...
- Java程序,基本数据类型、、数据类型转换、变量和常量、常用运算符
一.基本数据类型 整数类型:byte.short. int(常用).long(较常用) 定义某个变量 int a=10: 浮点类型(小数):float.double(常用) ...
- Java 静态变量,常量和方法
static 关键字 例如:在球类中使用PI这个常量,可能除了本类需要这个常量之外,在另外一个圆类中也需要使用这个常量.这时没有必要 在两个类中同时创建PI这个常量,因为这样系统会将这两个不在同一个类 ...
- [.net 面向对象编程基础] (5) 基础中的基础——变量和常量
[.net面向对象编程基础] (5) 基础中的基础——变量和常量 1.常量:在编译时其值能够确定,并且程序运行过程中值不发生变化的量. 通俗来说,就是定义一个不能改变值的量.既然不能变动值,那就必须 ...
- iOS开发Swift篇—(二)变量和常量
iOS开发Swift篇—(二)变量和常量 一.语言的性能 (1)根据WWDC的展示 在进行复杂对象排序时Objective-C的性能是Python的2.8倍,Swift的性能是Python的3.9倍 ...
- php标记,变量,常量
php标记 语法:有4种书写格式 1.<?php ... ?> 强烈推荐使用. 如果当前 php的代码段,是整个文档的最后一段,可以省略结束标记?(建议省略) 每句语句都要以分号;结束. ...
- Oracle基础 PL-SQL编程基础(1) 变量和常量
一.什么是PL-SQL PL-SQL是结合了Oracle过程语言和结构化查询语言(SQL)的一种扩展语言.具体来说,PL-SQL就是在普通的SQL语句的基础上增加了编程语言的特点,将数据操作和查询语句 ...
- 李洪强iOS开发Swift篇—02_变量和常量
李洪强iOS开发Swift篇—02_变量和常量 一.语言的性能 (1)根据WWDC的展示 在进行复杂对象排序时Objective-C的性能是Python的2.8倍,Swift的性能是Python的3. ...
- javascript 概述及基础知识点(变量,常量,运算符,数据类型)
JavaScript概述 1.1 什么是JavaScript: javaScript(简称js),是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言.同时也是一种广泛用于客户端Web开发的脚本语 ...
随机推荐
- 【BZOJ 2565】 最长双回文串
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=2565 [算法] Manacher [代码] #include<bits/std ...
- 洛谷P3834 可持久化线段树(主席树)模板
题目:https://www.luogu.org/problemnew/show/P3834 无法忍受了,我要写主席树! 解决区间第 k 大查询问题,可以用主席树,像前缀和一样建立 n 棵前缀区间的权 ...
- XHprof 使用 (转)
原文地址:http://blog.csdn.net/maitiandaozi/article/details/8896293 XHProf是facebook开源出来的一个php轻量级的性能分析工具,跟 ...
- hdu 3037Saving Beans(卢卡斯定理)
Saving Beans Saving Beans Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Jav ...
- MSSQL:查看作业情况
select j.name 'Job名', j.description '描述', j.ENABLED job_enabled, cast(js.last_r ...
- 【专题系列】单调队列优化DP
Tip:还有很多更有深度的题目,这里不再给出,只给了几道基本的题目(本来想继续更的,但是现在做的题目不是这一块内容,以后有空可能会继续补上) 单调队列——看起来就是很高级的玩意儿,显然是个队列,而且其 ...
- Spring Boot (11) mybatis 关联映射
一对多 查询category中的某一条数据,同时查询该分类下的所有Product. Category.java public class Category { private Integer id; ...
- windows phone传感器
Windows phone中的传感器主要包括加速计传感器.罗盘传感器.陀螺仪传感器等 加速计传感器 Accelerometer类是加速传感器的接口,Accelerometer类位于Windows.De ...
- background使用
background-position 有两个参数,定义背景图片起始位置可选值有: center top left right bottom px % background-size 可以用 px % ...
- 【PostgreSQL-9.6.3】创建、修改、删除数据库
1.创建数据库 create database database_name; 2.修改数据库的名称 alter database database_name rename to new_databas ...