Ruby 内置函数



由于Kernel模块被Object类包含,因此它的方法在Ruby程序的任何地方都可用。它们可以在没有接收者的情况下被调用(函数形式)。因此,它们通常被称为函数。

数字函数

以下是与数字相关的内置函数列表。它们应按如下方式使用:

#!/usr/bin/ruby

num = 12.40
puts num.floor      # 12
puts num + 10       # 22.40
puts num.integer?   # false  as num is a float.

这将产生以下结果:

12
22.4
false

浮点数函数

数学函数

转换字段说明符

函数sprintf( fmt[, arg...]) 和 format( fmt[, arg...])返回一个字符串,其中 arg 根据 fmt 进行格式化。格式化规范与 C 编程语言中 sprintf 的格式化规范基本相同。fmt中的转换说明符(% 后跟转换字段说明符)将被相应参数的格式化字符串替换。

以下是用法示例:

#!/usr/bin/ruby

str = sprintf("%s\n", "abc")   # => "abc\n" (simplest form)
puts str 

str = sprintf("d=%d", 42)      # => "d=42" (decimal output)
puts str 

str = sprintf("%04x", 255)     # => "00ff" (width 4, zero padded)
puts str 

str = sprintf("%8s", "hello")  # => " hello" (space padded)
puts str 

str = sprintf("%.2s", "hello") # => "he" (trimmed by precision)
puts str 

这将产生以下结果:

abc
d = 42
00ff
   hello
he

测试函数参数

函数test( test, f1[, f2])执行由字符test指定的以下文件测试之一。为了提高可读性,您应该使用 File 类方法(例如,File::readable?)而不是此函数。

以下是用法示例。假设 main.rb 存在并具有读、写权限,但没有执行权限:

#!/usr/bin/ruby

puts test(?r, "main.rb" )   # => true
puts test(?w, "main.rb" )   # => true
puts test(?x, "main.rb" )   # => false

这将产生以下结果:

true
false
false
广告