如何在 Ruby 中使用“defined?”关键字?
Ruby 提供了一个名为 **defined?** 的特殊关键字,用于确定 Ruby 中是否定义了特定对象或数据类型。
如果传递的表达式或参数已定义,**defined?** 关键字将返回一个字符串来描述其表达式或参数。如果 Ruby 中未定义表达式或参数,则返回 **nil**。
语法
下面给出 Ruby 中 **defined?** 关键字的语法
defined? variable_name
现在,让我们通过几个示例来演示如何在 Ruby 中使用 **defined?** 关键字。
示例 1
考虑以下代码。
# Declare the Variables
programming = 2
ruby = programming * 2
# Checking if the variables are defined or not
var1 = defined? programming
var2 = defined? java
var3 = defined? ruby
var4 = defined? Math::PI
# Displaying the results
puts "Variable 1: #{var1}"
puts "Variable 2: #{var2}"
puts "Variable 3: #{var3}"
puts "Variable 4: #{var4}"输出
它将产生以下输出。
Variable 1: local-variable Variable 2: Variable 3: local-variable Variable 4: constant
在这段代码中,我们声明了两个局部变量,然后使用了 Math 模块中的一个常量,这就是为什么我们得到了它们各自的字符串输出。
对于“变量 2”,我们传递了一个根本没有声明的字符串名称,因此我们得到了 nil 作为输出。
示例 2
现在让我们探索一个更复杂的 Ruby 代码,其中包含一个模块和 **两个** 方法,其中一个方法在模块中 **定义**,另一个方法未定义。考虑以下代码。
# Ruby program to illustrate defined? keyword
# First Method
def first_method
puts "Learn Ruby Programming"
end
module Module1
def second_method
puts "Inside Coders"
end
end
# Checking if the method is defined or not
# Using defined? keyword
method1 = defined? first_method
method2 = defined? second_method
module1 = defined? Module1
method3 = defined? hello
method4 = defined? puts
# Displaying results
puts "Method 1: #{method1}"
puts "Method 2: #{method2}"
puts "Method 3: #{method3}"
puts "Method 4: #{method4}"
puts "Module 1: #{module1}"输出
它将产生以下输出。
Method 1: method Method 2: Method 3: Method 4: method Module 1: constant
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP