IT虾米网

arrays之在一行中打印数组的内容

lautakyan007 2024年01月13日 编程语言 225 0

我是 ruby​​ 的新手,正在尝试使用数组。我想在单行中打印数组。 这是代码块(请忽略任何错误)

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 

当我在 if choice==1 中打印我的数组时,我得到了不同行的所有输出, 例子

hello 
i 
am 
beginner 
to 
ruby 

有没有办法把输出放在单行中? 即 你好,我是 ruby​​ 初学者

编辑:我什至尝试过使用 puts array.join(' '),但这也行不通。

请您参考如下方法:

首先,

puts array 

应该是

puts array.join(' ') 

默认情况下,puts 在其自己的行上输出每个元素。

其次,

el=gets.to_s 

应该是

el = gets.chomp 

gets 返回一个字符串,因此将字符串转换为字符串没有多大意义。但是 gets 返回的字符串也将以换行符结尾,因此您需要 chomp 关闭该换行符。


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!