String#to_i
返回0
當字符串不匹配任何數字字符,我明白,包括我自己在內的很多人都認爲這是不自然的,寧可期待nil
在這種情況下返回。但是Matz另有設計。什麼是最好的方式來區分字符串實際上是"0"
(或"00"
等)與不包含數字字符的字符串?String#to_i不匹配
0
A
回答
4
用途:
Integer('') # => #<ArgumentError: invalid value for Integer: "">
Integer('0') # => 0
+0
太棒了。我不知道。 – sawa
0
像這樣的事情i = s.to_i ; i = nil if i == 0 && s != '0'
。如果您經常需要它 - 無論是monkeypatch to_i還是隻添加better_to_i。
相關問題
- 1. 爲什麼「string」.to_i = 0,但是「9」.to_i = 9
- 2. 類型不匹配:'[string:'「]'
- 3. string :: find找不到匹配
- 4. Directory.GetFileSystemInfos(string)返回不匹配的文件
- 5. String未知模式匹配
- 6. 類型不匹配;找到:play.api.data.Form [controllers.Application.Userdata] required:play.api.data.Form [(String,String)]
- 7. 簡單通配符匹配的std :: string
- 8. 查詢表格,只匹配字段匹配的行「STRING」
- 9. 沒有運算符==匹配std :: string嗎?
- 10. 部分匹配ObservableCollection <string>對象
- 11. 如何匹配'<a href=' in a string?
- 12. Haskell中的[String]模式匹配
- 13. 如何匹配Java中String的開頭?
- 14. Mockito如何匹配String [] []參數?
- 15. 如何匹配「key:// string?list」或value =「key:// string?detail」字符串?
- 16. 從列表返回一個匹配<KeyValuePair <string,string >>
- 17. C++過載:[錯誤]'operator ='(操作數類型是'String'和'String')不匹配
- 18. 模式匹配不匹配
- 19. Preg匹配不匹配
- 20. 類型不匹配:無法從void轉換爲ArrayList <String>
- 21. java.lang.String和String之間的類型不匹配錯誤
- 22. 類型不匹配;發現:一些[String]必需:play.api.templates.Html
- 23. 細胞String數組和字符串不匹配
- 24. Linq查詢比較2列表<string>不同的匹配
- 25. 類型不匹配:找到字符串,要求io.gatling.core.validation.Validation [String]
- 26. 在兩個列表中發現不同的匹配<string>
- 27. 類型不匹配:無法從Map <String,ConsumerRecords <String,Supplier >>轉換爲ConsumerRecords <String,供應商>
- 28. `map(&:to_i)`在tryruby.org上不起作用?
- 29. Rails:SuperClass不匹配
- 30. 'operator-'不匹配
你可能想看看這篇文章: http://stackoverflow.com/questions/1235863/test-if-a-string-is-basically-an-integer-in-quotes-using-紅寶石 – Mark