在這里,我有這樣的Ruby代碼,用于將陣列轉換為字串陣列,也觀察到puts和print/p之間的區別,或者給出不同的輸出
。a= ["ruby"/span>]
print a.to_s
輸出:
"["ruby"]"
但是,當我使用print/p和class應該是字串時,需要像這樣
。"["/span>ruby"]" or '["ruby"]'
uj5u.com熱心網友回復:
試試這個
"'#{['ruby'/span>,'othersElements'/span>] 。 join("', '")}' "
其中", "是元素的分隔符
。.join("', '")
uj5u.com熱心網友回復:
你只需要to_s。它的輸出與eval兼容(只要元素本身可以用to_s進行序列化):
string = ["a"/span>, "b"/span>, "c"/span>].to_s
=> "["a", "b", "c"]"。
重建=評估字串
=> ["a"/span>, "b"/span>, "c"/span>]
rebuilt.class]。
=> 陣列
rebuilt[0].class; Array
=> 字串
uj5u.com熱心網友回復:
如果你接受有單引號而不是雙引號:
array = ['ruby', 'is', 'cool']
"['#{array.join(", '")}'] "
# => "['ruby', 'is', 'cool']"
# 然后你可以定義你自己的方法:
def puts_array(array)
把"['#{array.join(", '")}"]"
結束。
# Or overwrite Array#to_s method
class Array
def to_s
"['#{self.join(", '"/span>)}']"
結束。
end。
puts_array(array)
# => "['ruby', 'is', 'cool']"
把array.to_s
# => "['ruby', 'is', 'cool']" puts array.to_s
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/307625.html
標籤:
