解析.NET程序員 Ruby核心語法入門(2)_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:關于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

      來源:模板無憂//所屬分類:.Net教程/更新時間:2009-08-02
      相關.Net教程