我如何组合变量?

时间:2017-04-24 04:57:06

标签: ruby variables

我正在制作一个程序,我需要结合很多变量,其中大多数是字符串,但我有一些int,通过这样做

name = "#{variable1}#{variable2}"
name2 = "#{variable2}#{variable1}"

这是一个只有两个变量的简单例子,但这就是我想要做的想法。我正在逐一做所有的可能性,即使有两个以上的变量,但有很多组合。有没有一种简单的方法可以做到这一点,或者我必须逐一进行呢?另外,我是否需要单独编写引号或者这样做是否合适?

3 个答案:

答案 0 :(得分:3)

这是你的想法吗?

variable1 = "cat"
variable2 = 9
variable3 = "lives"
arr = [variable1, variable2, variable3]
  #=> ["cat", 9, "lives"] 
arr.join    
  #=> "cat9lives"

答案 1 :(得分:0)

将所有或部分变量放入一个数组中,这样可以更容易地生成组合。

s1 = 'a'
s2 = 'b'
s3 = 'c'
 n = 8
[s1, s2, s3, n].combination(3).map(&:join)
=> ["abc", "ab8", "ac8", "bc8"]

上面的示例假设您将从数组中选择3个变量中的任何一个并计算组合。您可能需要调整该数字以满足您的需求。

答案 2 :(得分:0)

编程的整个想法并非一个接一个地完成所有可能性。 “有很多组合”:它们看起来像我的排列。如果是这样的话:

var1 = "aa"
var2 = "bb"
var3 = 2

res = [var1, var2, var3].permutation.map{|perm| perm.join}
p res #=> ["aabb2", "aa2bb", "bbaa2", "bb2aa", "2aabb", "2bbaa"]