解析.NET程序員 Ruby核心語法入門(2)_.Net教程
推薦:關于URL的傳遞字符串問題的研究前幾天在調程序的時候遇到了比較郁悶的問題,我用URL從一個頁面傳遞字符串到另一個頁面的時,出現了個奇怪的問題,我要傳遞的字符串是“DK51 700中繼站”;可是另一個頁面接收到
基礎類型
如果一門編程語言不能處理數字,那就不值得學習和使用,Ruby當然能夠滿足算術運算了,如:
irb(main):004:0> 3 4
=> 7
irb(main):005:0> 3 * 4
=> 12
irb(main):006:0> 3 - 4
=> -1
irb(main):007:0> 3 / 4
=> 0
irb(main):008:0> 3.0 / 4.0
=> 0.75
irb(main):009:0> 0xF
=> 15
irb(main):010:0> 0x3 * 0xA
=> 30
正如你所看到的,Ruby支持整數和浮點類型,甚至可以接收常用的十六進制整數,但0x3 * 0xA的結果是以十進制的形式顯示的,即顯示結果是30而不是0x1E。
因為在.NET中,數字也是真實的對象,因此,你可以在它們上面調用類函數,如:
irb(main):011:0> 14.to_s
=> "14"
在c 中不要這樣做。
to_s類函數的功能是將一個對象轉換成一個字符串,因此,14.to_s返回的結果是"14",和.NET中的to_string()函數一樣,to_s函數實際上是一個對象函數,因此,在Ruby中你可以將任何東西轉換成字符串。
字符串
Ruby的字符串具備完整的操作支持,如:
irb(main):012:0> "hello" "there"
=> "hellothere"
irb(main):013:0> "Reader".length
=> 6
irb(main):014:0> "Reader".reverse
=> "redaeR"
irb(main):015:0> "reader".capitalize
=> "Reader"
irb(main):016:0> "Reader".include?("foo")
=> false
irb(main):017:0> "Reader".include?("ade")
=> true
irb(main):018:0> " Reader ".strip
=> "Reader"
irb(main):019:0> "Reader".gsub("e", "f")
=> "Rfadfr"
irb(main):020:0> "Reader".delete("ea")
=> "Rdr"
irb(main):021:0> "a" < "b"
=> true
幾乎可以使用所有的字符串操作符,可能有的你還從來都沒有使用過,如下面的代碼按字母順序測試某個字符串是否位于其他兩個之間:
irb(main):022:0> "Bob".between? "Adam", "Chris"
=> true
乘法操作符可以讓給定的字符串重復顯示指定的數量,如:
irb(main):023:0> "hi" * 5
=> "hihihihihi"
Crypt函數為字符串提供了一個單向哈希加密功能,在存儲敏感數據如密碼時就可以使用它,如:
irb(main):024:0> "Reader".crypt("ab")
=> "abofgDjq6JNJo"
字符
Ruby沒有內置的字符類型,它象數字一樣表現字符,可以是?語法來表示一個字符常量,你可以使用chr函數將一個數字轉換成一個等價的字符串,如:
irb(main):025:0> "Reader"[2]
=> 97
irb(main):026:0> ?a
=> 97
irb(main):027:0> 97.chr
=> "a"
賦值
其實執行這個操作并沒什么用途,除非你可以將其存儲起來方便后面使用,如:
irb(main):028:0>x = 42
=>42
字符串有一個特殊的語法,允許嵌入式賦值,這個賦值不僅僅局限于簡單的變量替換,它是一個完整的賦值,如:
irb(main):029:0> "The answer is #{x}!"
=> "The answer is 42!"
irb(main):030:0> "The answer is #{6 * 7}!"
=> "The answer is 42!"
可以使用單引號將字符串引起來避免這種賦值,注意是單引號,不是雙引號,如:
irb(main):031:0> 'The answer is #{x}!'
=> "The answer is \#{x}!"
分享:.NET Framework 3.5 SP1正式版微軟今天發布了.NET Framework 3.5第一個SP服務包的最終版.這是一個累積更新,包含很多基于.NET Framework 2.0、3.0和3.5不斷生成的新功能,此外還包括.NET Framework 2.0 SP2和.NET Framewo
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發送Email實例(可帶附件)
- js實現廣告漂浮效果的小例子
- asp.net Repeater 數據綁定的具體實現
- Asp.Net 無刷新文件上傳并顯示進度條的實現方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數據庫(連接字符串的配置及獲取)
- asp.net頁面傳值測試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現分頁示例代碼
- 相關鏈接:
- 教程說明:
.Net教程-解析.NET程序員 Ruby核心語法入門(2)。