一次在两个变量上运行方法

富有的

我想知道除了运行两次之外,重构此代码以提高效率的正确方法是什么。

class Hamming
  def compute (a, b)

    a.to_a.split("")
    b.to_a.split("")

  end
end

有什么类似于一次分配两个变量的东西a, b = 1, 2吗?

重的

由于代码没有意义,我想您要问的是如何避免重复自己的代码。

很简单,编写另一个方法并调用它。这是一个想找出哪个短语更长的示例,但是您想忽略很多空格。所以foo bar不长于12345678

def longer_phrase(phraseA, phraseB)
    normalizedA = normalize(phraseA)
    normalizedB = normalize(phraseB)

    return normalizedA.length > normalizedB.length ? phraseA : phraseB
end

def normalize(phrase)
    normalized = phrase.gsub(/\s+/, ' ');
    normalized.strip!

    return normalized
end

puts longer_phrase("foo          bar  ", "12345678")

在进行数据处理之前,需要对所有数据进行规范化处理。这样可以避免重复自己。由于我们知道所有工作的目的是标准化字符串,因此它使您的代码更易于理解。并且它为您提供了可在其他地方使用的归一化功能,因此您可以以相同的方式对数据进行归一化。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章