NoMethodError: Undefined Method When Using Partition Enumerable
NoMethodError: Undefined Method When Using Partition Enumerable
我阅读了有关 Ruby 可枚举分区的信息,并想重构我的信用卡验证器项目并包含它。
class CreditCheck
attr_reader :number, :flipped, :split
def initialize(number)
@number = number.split("").map { |s| s.to_i}
end
def flip_number
@flipped = @number.reverse
end
def check_validity
@split = @flipped.partition.with_index { |x , index|
index.even?}
@split
end
end
这个returns:
NoMethodError: undefined method `partition' for nil:NilClass
关于如何解决这个问题的任何帮助?我确定我只是遗漏了一个小细节。
在 check_validity 方法中将 @flipped 替换为方法 flip_number
@split = flip_number.partition.with_index { |x , index| index.even?}
我阅读了有关 Ruby 可枚举分区的信息,并想重构我的信用卡验证器项目并包含它。
class CreditCheck
attr_reader :number, :flipped, :split
def initialize(number)
@number = number.split("").map { |s| s.to_i}
end
def flip_number
@flipped = @number.reverse
end
def check_validity
@split = @flipped.partition.with_index { |x , index|
index.even?}
@split
end
end
这个returns:
NoMethodError: undefined method `partition' for nil:NilClass
关于如何解决这个问题的任何帮助?我确定我只是遗漏了一个小细节。
在 check_validity 方法中将 @flipped 替换为方法 flip_number
@split = flip_number.partition.with_index { |x , index| index.even?}