我是ruby的新手,正在尝试使用arrays.i想要以单行打印数组.这是代码块(请忽略任何错误)
array=[]
puts "Choose an option: ","1.Push, 2.Pop, 3.Display Length"
choice=gets.to_i
while choice!=4
if choice==1
puts "enter Number of elements to be pushed"
n=gets.to_i
n.times do
puts "Enter element"
el=gets.to_s
array.push el
end
puts array
elsif choice==2
puts array.pop
elsif choice==3
puts array.length
else
puts "invalid"
end
end
Run Code Online (Sandbox Code Playgroud)
当我打印我的阵列时,if choice==1我得到不同线路上的所有输出,例如
hello
i
am
beginner
to
ruby
Run Code Online (Sandbox Code Playgroud)
无论如何将输出放在一行?即hello i am beginner to ruby
编辑:我甚至尝试过使用puts array.join(' '),但这也不起作用.
首先,
puts array
Run Code Online (Sandbox Code Playgroud)
应该
puts array.join(' ')
Run Code Online (Sandbox Code Playgroud)
默认情况下,puts输出每个元素在其自己的行上.
其次,
el=gets.to_s
Run Code Online (Sandbox Code Playgroud)
应该
el = gets.chomp
Run Code Online (Sandbox Code Playgroud)
gets返回一个字符串,因此将字符串转换为字符串没有多大意义.但返回的字符串gets也将以换行符结束,因此您需要chomp关闭该换行符.
| 归档时间: |
|
| 查看次数: |
10910 次 |
| 最近记录: |