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::read?)而不是此函数。

以下是使用示例。假设 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