-2
我正在看一個代碼的例子,並感到困惑。這個ruby代碼中的[-1,1]是什麼?
def self.type(input)
input.strip!
return 'question' if input[-1,1] == '?'
end
因此,input [-1]有意義,它檢查最後一個字符是否是問號。 1
是做什麼的?此外,所有示例測試都沒有通過1
。
我正在看一個代碼的例子,並感到困惑。這個ruby代碼中的[-1,1]是什麼?
def self.type(input)
input.strip!
return 'question' if input[-1,1] == '?'
end
因此,input [-1]有意義,它檢查最後一個字符是否是問號。 1
是做什麼的?此外,所有示例測試都沒有通過1
。
input[-1,1]
表示從最後一個字符中讀取1個字符。它給出了與input[-1]
相同的結果,因爲您只讀取最後一個字符的1個字符。
看一些例子來了解更多:
❯ irb
2.3.0 :001 > input = 'lenin'
=> "lenin"
2.3.0 :002 > input[-1]
=> "n"
2.3.0 :003 > input[-1,1]
=> "n"
2.3.0 :004 > input[-2]
=> "i"
2.3.0 :005 > input[-2, 1]
=> "i"
2.3.0 :006 > input[-2, 2]
=> "in"
2.3.0 :007 > input[-2, 3]
=> "in"
你知道什麼方法是,爲什麼不乾脆[查找文檔中的參數](http://ruby-doc.org/core- 2.4.1/String.html#方法-I-5B-5D)? – coreyward
你能解釋一下文檔中的*完全不清楚嗎?這樣一來,Ruby開發人員可以爲將來的讀者改進文檔,但只有當您確實告訴他們*哪裏*,* how *和* why *現有文檔不能幫助您回答這個問題時。 –
我沒有檢查文檔。 –