Ruby Numeric
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的更多相关文章
- Ruby Numeric类
Numeric类 Numeric ---------> Integer ---------> Fixnum ...
- 1月24日 ruby基础3部分 Numeric, Array已学。
<div style="background:lightblue"> 第12章 数值类 12.1 数值的构成 Numeric-> Integer-> Fix ...
- 「ruby/MiniMagick」用MiniMagick处理图片
包的选择和配置 想用RMagick,但据说内存泄露的问题比较厉害,作为替代品MiniMagick不存在内存泄露的问题.而二者都是使用ImageMagick的,所以需要下载并安装ImageMagick. ...
- ruby学习总结05
1.数值类(Numeric) 有理数:Rational(分子,分母) 复数:Complex(实数,虚数) 随机数:Rnadom rand() 返回比1小的浮点数,rand(种子数) 返回0到该 ...
- ruby条件控制结构
一.比较语句 大部分和其他的语言一样,这里注意<=>. 条件语句 如下几种形式 if if ..else.. end if..elsif..else..end unless(if not) ...
- 《ruby编程语言》笔记2 对象
ruby是一门非常纯粹的面向对象的语言:所有值都是对象,而且没有基本类型(primitive type)和对象类型的区别,这一点不同于其他语言.在Ruby中,所有对象都继承一个Object类,而且共享 ...
- Ruby自学笔记(五)— 条件判断
条件判断,在编程语言中都存在,而Ruby中的条件判断和Java中类似,当然还是存在些许差别 Ruby中条件判断的条件: 1) 可以使用 ==,<,>等比较运算来作为条件,比较运算可以返回t ...
- ruby.new
ruby.new 输出:print.puts.p 注释 #say hello =begin this is a long comment =end 变量 local: time or _time in ...
- ruby 2.x.x之新特性散谈
ruby入门看的是经典的<ruby编程语言>,可是那描述的是v1.9的老版本啊!下面聊一下ruby2.x.x的新特性,x是0-n都有可能啊. 1.关键字参数(Keyword argumen ...
随机推荐
- Magento给新产品页面添加分页
本文介绍如何让magento创建一个带分页功能的新到产品页面,方便我们在首页或者其它CMS Page调用和展示新到产品. 在Magento我们经常有的做法是建立一个可以调用新产品的block,然后通过 ...
- 脚本语言&& Performance Testing
watin: http://www.cnblogs.com/dahuzizyd/archive/2007/04/13/ruby_on_rails_windows_instatnrails_study_ ...
- Hex Editor实现Notepad++16进制编辑功能
把HexEditor.dll文件复制到安装目录(如C:\Program Files\Notepad++\plugins),退出NotePad++重新打开即可!需要以十六进制显示时,点击菜单的:[插件] ...
- 五 Servlet 技术
一 Servlet 基础 1. 定义相关: a) 是运行在 Web 服务器上得 Java 小程序 b) 只将处理结果返回给客户 c) 是实现接口 Servlet 的 java 类,能被服务器调用. d ...
- (实用篇)多个PHP中文字符串截取函数
字符串截取是一个非常常见的编程任务,而往往带中文的字符串截取会经常用到.虽然不难,但是自己写函数实现又耗费时间,这里介绍一个比较好用的字符串截取函数,能够胜任基本的需求了 <?php funct ...
- 使用AjaxPro
1:后台注册 protected void Page_Load(object sender, EventArgs e) { AjaxPro.Utility.RegisterTypeForAjax(ty ...
- href="#"与javascript:void(0)的区别
共同点:都是一个空链接. 不同点:所以,#与javascript:void(0)的区别也很明显,#方法会跳转到页面的顶部,并且在页面URL后面会出现#,而javascript:void(0)方法不会, ...
- Spring 框架获取 datasource对象的方法
1,使用org.springframework.jdbc.datasource.DriverManagerDataSource 2.使用org.apache.commons.dbcp.BasicDa ...
- map的相关
private static final Map<String, String> flagMap = new HashMap<String, String>(); static ...
- asp.net 中json字符串转换
List<ATTVal> Replys = JsonParser.FromJson<List<ATTVal>>(attrValueStr);