ruby 1.9 how to convert array to string without brackets
Use interpolation instead of concatenation:
reportStr = "In the first quarter we sold #{myArray[3]} #{myArray[0]}(s)."
It's more idiomatic, more efficient, requires less typing and automatically calls to_s
for you.
And if you need to do this for more than one fruit the best way is to transform the array and the use the each statement.
myArray = ["Apple", "Pear", "Banana", "2", "1", "12"]num_of_products = 3tranformed = myArray.each_slice(num_of_products).to_a.transposep tranformed #=> [["Apple", "2"], ["Pear", "1"], ["Banana", "12"]]tranformed.each do |fruit, amount| puts "In the first quarter we sold #{amount} #{fruit}#{amount=='1' ? '':'s'}."end #=>#In the first quarter we sold 2 Apples.#In the first quarter we sold 1 Pear.#In the first quarter we sold 12 Bananas.