`

Ruby基本数据类型

阅读更多

d

(转)http://blog.csdn.net/foreverphoenix/archive/2009/05/06/4155385.aspx

 

数字

1、 Ruby 支持整数和浮点数。整数可以使任何长度。一定范围内的整数是 Fixnum 类的对象。范围之外的整数存储在 Bignum 类的对象中。这种处理是透明的。

 

2、 可以在一个 ASCII 字符前加一个问号来获得其对应的整数值。 Ctrl 组合键可以由 ?\C-x ?\cx(x&0x9f) 来产生。 Meta 字符( x|0x80 )可以由 ?\M-x 来产生。

3、 一个带有小数点或 / 和指数的数字字面量被认为是 Float 对象。 Float 对象和本机上的 double 类型大小一样。

4、 Float 精度有限,若需要更好精度的小数,可以使用标准苦中 BigDecimal ,但效率会受影响

 

字符串

1、 字符串字面量中可以放置各种转义序列。字符串分界符的类型决定了要被替换的程度。在单引号字符串中,只识别反斜线和单引号的转义。双引号字符串支持更多的转义字符,还可以使用 #{expr} 把任何 Ruby 表达式的值放进字符串中,其中如果 expr 是全局变量、类变量或实例变量的话,花括号可以忽略。

2、 另外有三种构建字符串字面量的形式: %q (相当于单引号), %Q (相当于双引号), here document 。跟在 q Q 后面的字符是分界符。分界符可以是任何一个非字母数字的单字节字符。字符串被一直读取直到出现下一个相同的(对 ({[< 来说是对应的闭合符号) 分界符。 Here document 由源文件中的那些行但没有包含在 << 字符后面指明终结字符串的行组成。一般情况下终结符必须在第一列出现。如果把一个减号 - 放在 << 字符后面,就可以缩进编排终结符。分隔符可以跨越多行,行结束符以及后续行开始处的空格都被包含到字符串中。

3、 其他用于字符串的分隔符还有 %w(%W) 生成字符串数组, %x 执行 shell 命令, %r 生成正则表达式。

4、 Ruby 字符串是 8 位字节序列。如果处理 Unicode 编码,需要加入以下代码:( jcode 库覆盖了String 类中大多数方法用来处理多字节文本 )     $KCODE='u'      require 'jcode'

5 、正则表达式的三种表达方式:1)/regular_expression/  2)Regexp.new(“regular_expression”)  3)%r{regular_expression}

 

区间

1、 区间作为序列, ”..” 的形式是创建闭合的区间(包括右端的值), ”…” 的形式是创建半闭半开区间(不包括右端德值)。

2、 可以用自定义的对象来创建区间,条件是这些对象必须实现 succ 方法和 <=>

3、 区间作为条件使用,当区间的第一部分的条件为 true 时打开,当区间的第二部分的条件为 true 关闭。两点的 range 在第一次从关变为开时,会立即求解结束条件,并相应地变迁状态。这意味着如果 expr1 expr2 在一个调用中都为真,那么两点形式的调用将结束于关状态。不过该调用仍返回真。三点形式的 range 不会在进入开状态后立即求解结束条件。

4、 区间作为间隔,测试某些值是否会落入区间表达的间隔内。使用 === 操作符比较。

 

数组

1、 数组类的字面量是在方括号间由逗号分隔的一连串对象引用组成的。对于全部是字符串对象的数组,可以用简写形式 %w %W 来构成。 %w 形式将空格隔开的 token 提取为连续的数组元素,在单个字符串内不执行替换。 %W 形式对每个 token 执行和双引号字符串一样的替换规则,空格可以用反斜线转义。

2、 通过 [index] 访问数组元素,第一个元素索引为 0 。索引可以为负值, -1 表示最后一个元素。  

 

散列表

1、 散列表的初始化有两种方式: {} 中用 key=>value 的形式, [] 中连续放置 key,value ,中间用逗号隔开。

2、 散列表中的键如果使用 equ? 比较相等,那么这两个键必定具有相同的散列码。如果把自定义类的对象实例作为 hash 键,那么需要确保 1 )一旦对象被创建,它的散列码就不再改变; 2 )每当键的散列码发生变化时调用 Hash#rehash 方法重新对散列表进行索引。

 

符号

1、 Ruby Symbol 表示“名字”,比如字符串的名字,标识符的名字。创建一个 Symbol 对象的方法是在名字或者字符串前面加上冒号。每个 String 对象都是不同的,即便他们包含了相同的字符串内容;而对于 Symbol 对象,一个名字(字符串内容)唯一确定一个 Symbol 对象。名字相同,则 Symbol 相同;名字不同,则 Symbol 不同。 Symbol 对象一旦定义将一直存在,直到程序执行退出。所有 Symbol 对象存放在 Ruby 内部的符号表中,可以通过类方法 Symbol.all_symbols 得到当前 Ruby 程序中定义的所有 Symbol 对象,该方法返回一个 Symbol 对象数组。

 

---------------------------

reference

 

Ruby字符(串)总结

http://blog.csdn.net/sheismylife/archive/2009/10/09/4646140.aspx

分享到:
评论

相关推荐

    ruby基本数据类型简明介绍

    主要介绍了ruby基本数据类型简明介绍,本文讲解了数值类型、字符串、区间、数组、散列表、符号等基本数据类型,需要的朋友可以参考下

    Ruby 数据类型.pdf

    uby支持的数据类型包括基本的Number、String、Ranges、Symbols,以及true、false和nil这几个特殊值,同时还有两种重要的数据结构——Array和Hash。

    Ruby 数据类型

    本章节我们将为大家介绍 Ruby 的基本数据类型。 Ruby支持的数据类型包括基本的Number、String、Ranges、Symbols,以及true、false和nil这几个特殊值,同时还有两种重要的数据结构——Array和Hash。 数值类型(Number...

    Ruby 小白入门指南理解 Ruby 及其特点.txt

    变量和数据类型:Ruby 支持多种基本数据类型,包括整数、浮点数、字符串、数组、哈希等。你需要了解如何声明和使用这些变量,以及它们之间的区别和用法。 条件语句和循环:Ruby 使用 if...else、case、while、for 等...

    Ruby的教程.txt

    变量、常量和数据类型:学习Ruby中变量的定义和命名规则,了解常量的使用,掌握基本的数据类型(如整数、浮点数、字符串等)。 运算符与控制流:掌握Ruby中的运算符(如算术运算符、比较运算符、逻辑运算符等),...

    Ruby语言教程.md

    通过学习Ruby的基本语法、变量和数据类型、控制流程和函数等内容,你将能够编写简单的Ruby程序并逐渐掌握更复杂的概念。继续学习和实践,你将能够开发出优雅、高效的软件,并在各个领域展现出色的能力。祝你在学习...

    Ruby语言教程&案例&相关项目资源

    通过推荐一系列优质的教程资源,文章引导读者从Ruby的基本语法、数据类型和控制结构开始,逐步深入面向对象编程的核心概念。这些教程不仅提供了详细的解释和示例代码,还配备了丰富的练习题,帮助读者巩固所学知识,...

    Ruby语言教程及案例.docx

    变量和数据类型 ```ruby # 定义整数变量 age = 25 # 定义字符串变量 name = "John" # 输出变量值 puts "Name: #{name}, Age: #{age}" ``` 在Ruby中,变量名以小写字母或下划线开头,支持动态类型。使用 `#{}` ...

    crdt:Ruby 的无冲突复制数据类型

    什么是 CRDT CRDTS 是分布式数据类型,表现出称为强最终一致性的东西。 基本上,它们是让您构建分布式系统的构建块。我怎样才能了解更多Marc Shapiro 合写了大量论文,涵盖了 CRDT 的基础知识以及对简单 CRDT 的有用...

    Ruby on Rails开发 从入门到精通实战教程.rar

    Ruby语言基础: 学习Ruby语言的基本语法、数据类型、函数和类等基础知识,为后续学习Rails框架奠定基础。 Web应用开发: 学习使用Rails框架开发Web应用的全过程,包括路由配置、控制器编写、视图渲染等方面的技术。 ...

    ruby语法基础教程

    第四章 基本类型 33 §4.1 Array 33 §4.2 Hash 34 §4.3 Number 34 §4.4 String 35 §4.5 Range 36 §4.6 Symbol 37 §4.7 正则表达式 37 第五章 代码块和迭代器 38 §5.1 代码块(Block) 38 §5.1.1 什么是代码块 ...

    非常:Ruby命令式随机数据生成器和Quickcheck

    Rantly基本上是递归下降解释器,其每个方法都返回某种类型的随机值(字符串,整数,浮点数等)。 它的实现内部没有外来数学。 完全无副作用。 安装 急需Ruby 2.4或更高版本。 要安装Rantly,请将其添加到您的...

    程序员为什么还要刷题-ruby-intro:[Ruby]

    基本数据类型 数据收集 条件句 方法(函数) 数据不变性 检查 Ruby 符号和数据不变性 列出三个有用的数组和散列方法 取景(10 分钟 / 0:10) 什么是Ruby? Ruby 是一种服务器端编程语言,这意味着它驻留在网页服务器...

    爬虫开发的基本流程.doc

    这包括确定要爬取的目标网站、需要获取的数据类型以及爬取的频率等。明确的需求有助于后续的技术选型和代码实现。 选择合适的语言和框架: 根据需求,选择适合的编程语言进行爬虫开发。常见的编程语言包括Python、...

    程序员为什么还要刷题-W04D01-Ruby:W04D01-Ruby

    基本数据类型 数据收集 条件句 数据不变性 解释和应用范围 与符号互动并解释其意义 介绍 Ruby 是一种服务器端语言。 它是由日本于 1995 年设计和开发的。 他构建 Ruby 的理念不是简单,而是让 Ruby 编程以一种反映...

    xsv:快速,轻量级的Ruby xlsx解析器,不提供CSV解析器无法提供的任何功能

    它只将值转换为基本的Ruby类型(整数,浮点数,日期和时间),而不处理大多数格式或更高级的功能。 它致力于以最小的RAM和CPU消耗快速处理大型工作表,并且从最早的版本开始就已经投入生产。 Xsv代表“ Excel ...

    geo_coord:简单但有用的Ruby地理坐标类

    这个gem是(拼命)尝试提供一种“基本”类型,准备将其放入任何Ruby代码中,以统一现有地理和地理感知gem中所有不同的LatLng或Point或Location类,以实现轻松的数据交换和自然用法。 作为独立的宝石,这种尝试在...

    belajar-koding:内容库,用于学习编码

    每种编程语言都有要学习的标准材料,它们几乎是相似的,包括以下内容基本语法打印(或放入Ruby):在终端中显示结果可变或常数分配数据类型(识别数据类型,如何检查数据类型) 标准数据类型弦乐级联插补数字(例如...

Global site tag (gtag.js) - Google Analytics