Ruby入門

來源:互聯網
上載者:User
一、 Ruby  Introduction:  Ruby is "an interpreted scripting language for quick and easy object-oriented programming"。   1. Interpreted scripting language
    • ability to make operating system calls directly
    • powerful string operations and regular expressions
    • immediate feedback during development
   2. Quick and easy
    • variable declarations are unnecessary
    • variables are not typed
    • memory management is automatic
   3.Object oriented programming
    • everything is an object

 

二、Variables & Constant : 

  1.Variables

  • Local variables:
    –the scope of a local variable is one of proc{ ... }/loop{ ... }.def ... End/class ... End/module ... end
  • Global variables:
    –It can be referred to from anywhere in a program. Before initialization, a global variable has the special value nil.
  • Instance variables:
    –Its scope is confined to whatever object self refers to.
  • Class variables:
    –Same as the static member in C# language.   Note: Don’t use the Ruby keyword when define a variable.

 

   2.Constant   

    Definition:
    • A constant has a name starting with an uppercase character.
    • Constants may be defined within Classes or Module, never in method.
    • It should be assigned a value at most once. 

     e.g.:

      class Demo

          PI=3.1415

         #PI=3.15214     #warning: already initialized constant PI

          def hello

                  PI=3.1415  #wrong

          end

      end

      demo = Demo.new

         demo.hello

 

三、Comment   

    •Single line:

        #(Ctrl + /)

    •Multi-line

       =begin

          …

          …

      =end

 

四、Numeric:

  • Methods:

    • to_f()  #Integer -> Float
    • to_i()  # Float -> Integer, directly delete the part of decimal, if don’t want this, you can use the round method
    • round
    • n.times{|i | …}
    • from.upto(to) {|i| …}
    • from.downto(to){|i| …}
    • from. step(to, step) {|i| …}   
   •Additional:

      a=01123     #0=> Octal

      B=-0x23     #0X=> Hex

      C=+0b1010     #0=> Binary

 

 五、Range:

  1.Definition:
    • val1.. val2  #contains: val1,…, va2
    • val1…val2  #contains: val1,…, val2-1 
     E.g.:      1..5  #contains: 1,2,3,4,5      1…5  #contains: 1,2,3,4

 

   2.Methods:

    • to_a()                     #convert to array
    • Include?(targetValue)/===(targetValue)     #judge whether contains the targetValue
    • min()/begin()/first()              #Get the minimum value
    • max()/end()/last               #Get the maximum value 
    • reject:   Convert to an array and select some element whichdon’t satisfy the conditional
    • select:   Convert to an array and only select some element whichsatisfy the conditional
    • each:    Iterates over the elements and passing each in turn to the block.

    e.g.      

      a=10..20

      puts a. reject{|x| x<15}

      puts

      puts a. select{|x|x<15}

      puts

      a. each{|x| puts x}

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.