Numeric
|-- Float
|-- Integer
    |-- Fixnum
    |-- Bignum

Numeric的基本结构

整数的差异,一般的数字Fixnum就能够处理,即使超过了Fixnum的处理范围也会直接转换为Bignum,不需要程序员处理。

0b开头的数字是二进制的;

0开头的数字是八进制的;

0d开头的数字是十进制的;

0x开头的数字是十六进制的;

之外的基本上都是十进制的。

?a,是查看字符a的ASCII码。

?\t,查看\t的ASCII码。

123.45,浮点数

123.45e3,123.45*103

123.45e-3,123.45*10-3

数字内的下划线会被忽略掉!!!!

p 123_456_789  #=> 123456789

p 0x1_2_3  #=>0x123

p 1_234.0e3  #=>1234000.0

+,-,*,/

%  取余数

**  求幂

x.divmod(y)  #返回结果为一个包含两个元素的数组。第一个元素为商,第二个元素为余数。

x.module(y)  #等同于x%y

x.remainder(y)  #返回符号与x相同的余数

整数除以0会出现错误;

浮点数除以0返回结果为Infinity

"123".to_i

123.to_f

反正我没有发现他们会出现什么异常。

round,Float#to_i会直接去掉小数点后面的部分。如果想要四舍五入需要用round。

ceil,floor:天花板, 地板

n.times{|i|...}

from.upto(to){|i|...}

from.downto(to){|i|...}

form.step(to, step){|i|...}

Ruby Numeric的更多相关文章

  1. Ruby  Numeric类

    Numeric类   Numeric ---------> Integer ---------> Fixnum                                       ...

  2. 1月24日 ruby基础3部分 Numeric, Array已学。

    <div style="background:lightblue"> 第12章 数值类 12.1 数值的构成 Numeric-> Integer-> Fix ...

  3. 「ruby/MiniMagick」用MiniMagick处理图片

    包的选择和配置 想用RMagick,但据说内存泄露的问题比较厉害,作为替代品MiniMagick不存在内存泄露的问题.而二者都是使用ImageMagick的,所以需要下载并安装ImageMagick. ...

  4. ruby学习总结05

    1.数值类(Numeric) 有理数:Rational(分子,分母) 复数:Complex(实数,虚数) 随机数:Rnadom   rand()  返回比1小的浮点数,rand(种子数)  返回0到该 ...

  5. ruby条件控制结构

    一.比较语句 大部分和其他的语言一样,这里注意<=>. 条件语句 如下几种形式 if if ..else.. end if..elsif..else..end unless(if not) ...

  6. 《ruby编程语言》笔记2 对象

    ruby是一门非常纯粹的面向对象的语言:所有值都是对象,而且没有基本类型(primitive type)和对象类型的区别,这一点不同于其他语言.在Ruby中,所有对象都继承一个Object类,而且共享 ...

  7. Ruby自学笔记(五)— 条件判断

    条件判断,在编程语言中都存在,而Ruby中的条件判断和Java中类似,当然还是存在些许差别 Ruby中条件判断的条件: 1) 可以使用 ==,<,>等比较运算来作为条件,比较运算可以返回t ...

  8. ruby.new

    ruby.new 输出:print.puts.p 注释 #say hello =begin this is a long comment =end 变量 local: time or _time in ...

  9. ruby 2.x.x之新特性散谈

    ruby入门看的是经典的<ruby编程语言>,可是那描述的是v1.9的老版本啊!下面聊一下ruby2.x.x的新特性,x是0-n都有可能啊. 1.关键字参数(Keyword argumen ...

随机推荐

  1. Magento给新产品页面添加分页

    本文介绍如何让magento创建一个带分页功能的新到产品页面,方便我们在首页或者其它CMS Page调用和展示新到产品. 在Magento我们经常有的做法是建立一个可以调用新产品的block,然后通过 ...

  2. 脚本语言&& Performance Testing

    watin: http://www.cnblogs.com/dahuzizyd/archive/2007/04/13/ruby_on_rails_windows_instatnrails_study_ ...

  3. Hex Editor实现Notepad++16进制编辑功能

    把HexEditor.dll文件复制到安装目录(如C:\Program Files\Notepad++\plugins),退出NotePad++重新打开即可!需要以十六进制显示时,点击菜单的:[插件] ...

  4. 五 Servlet 技术

    一 Servlet 基础 1. 定义相关: a) 是运行在 Web 服务器上得 Java 小程序 b) 只将处理结果返回给客户 c) 是实现接口 Servlet 的 java 类,能被服务器调用. d ...

  5. (实用篇)多个PHP中文字符串截取函数

    字符串截取是一个非常常见的编程任务,而往往带中文的字符串截取会经常用到.虽然不难,但是自己写函数实现又耗费时间,这里介绍一个比较好用的字符串截取函数,能够胜任基本的需求了 <?php funct ...

  6. 使用AjaxPro

    1:后台注册 protected void Page_Load(object sender, EventArgs e) { AjaxPro.Utility.RegisterTypeForAjax(ty ...

  7. href="#"与javascript:void(0)的区别

    共同点:都是一个空链接. 不同点:所以,#与javascript:void(0)的区别也很明显,#方法会跳转到页面的顶部,并且在页面URL后面会出现#,而javascript:void(0)方法不会, ...

  8. Spring 框架获取 datasource对象的方法

    1,使用org.springframework.jdbc.datasource.DriverManagerDataSource  2.使用org.apache.commons.dbcp.BasicDa ...

  9. map的相关

    private static final Map<String, String> flagMap = new HashMap<String, String>(); static ...

  10. asp.net 中json字符串转换

    List<ATTVal> Replys = JsonParser.FromJson<List<ATTVal>>(attrValueStr);