第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Ruby塊和不帶括號的參數(shù)

Ruby塊和不帶括號的參數(shù)

泛舟湖上清波郎朗 2019-08-28 15:30:09
Ruby塊和不帶括號的參數(shù)我提取了簡單的例子:require 'pp'x = 1..3pp x.map do |i| {:value => i, :double => (i*2)} endpp x.map { |i| {:value => i, :double => (i*2)} }pp(x.map do |i| {:value => i, :double => (i*2)} end)pp(x.map { |i| {:value => i, :double => (i*2)} })我想知道為什么第一個pp產(chǎn)生:[1, 2, 3]所有的演講者都在給予:[{:value=>1, :double=>2}, {:value=>2, :double=>4}, {:value=>3, :double=>6}]我認(rèn)為它與運算符優(yōu)先級有關(guān)。我在哪里可以找到好的解釋?
查看完整描述

2 回答

?
慕村225694

TA貢獻1880條經(jīng)驗 獲得超4個贊

這是因為你在打電話

pp x.map

并將一個塊傳遞給pp(忽略它)

正如編程Ruby書中所解釋的那樣

大括號具有很高的優(yōu)先級; 確實有一個低優(yōu)先級

因此,有效地,大括號綁定到最接近它們的函數(shù)調(diào)用(x.map),而綁定到最遠的(pp)。這有點簡單,但它應(yīng)該解釋這種情況

查看完整回答
反對 回復(fù) 2019-08-28
?
慕尼黑8549860

TA貢獻1818條經(jīng)驗 獲得超11個贊

在此帖子中使用Ruby-2.2.0的pry會話的部分日期。pp_hash = x.map do | i | {:value => i,:double =>(i * 2)} end => [{:value => 1,:double => 2},{:value => 2,:double => 4},{ :value => 3,:double => 6}] pp_hash.join(“,”)“{:value => 1,:double => 2},{:value => 2,:double => 4}, {:value => 3,:double => 6}“這在今天的Json用法中可能更為理想,但這只是對輸出讀取的風(fēng)格問題。有時,只要您的代碼可以處理正確的類型,您將要傳遞哪一個并不重要。pp_hash = pp_hash.join(“,”)

查看完整回答
反對 回復(fù) 2019-08-28
  • 2 回答
  • 0 關(guān)注
  • 638 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號