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(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