Rumah > Soal Jawab > teks badan
第一句觉得很奇怪啊,没理解错的话是创建了一个二维hash表吧。但是很不解的是为什么ruby的hash可以给定一个初始值?只有值吗?键呢?键在哪儿?
第二句那个unless很绕啊,真搞不懂为啥要有这样的关键字,那句话意思是说:
除非存在sindex这个键,我赋值为[],否则。。。得,按我这样理解这个“否则”还不知道要干嘛!?
请大家帮我看看吧,先谢谢啦。
天蓬老师2017-04-21 11:21:07
Soalan pertama: http://ruby-doc.org/core-2.1.0/Hash.html#method-c-new
Mari tulis beberapa ayat lagi. Terdapat dua cara untuk menggunakannya
xxx = Hash.new { |hash| Hash.new(false) }
atau
xxx = Hash.new { |hash,key | hash[key] = Hash.new(false);nil }
Sebenarnya, hash = Hash.new(false); yang ditulis di atas dalam soalan sama sekali tidak diperlukan
Sebenarnya saya cuma nak
Hash.new { Hash.new(false);}
Cukuplah. Soalan kedua: Jika item_array tidak mempunyai ahli dengan simbol sindex, maka laksanakan
sebelumnya. Sintaks ini adalah untuk menyiarkan klausa seperti if (atau while melainkan). Apa yang diungkapkan sebenarnya ialah @item_array[i] = []
xxx if condition
=>
if condition
xxx
end
Pada asasnya, terdapat beberapa baris sahaja yang tiada. .