Ruby入门

一、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
    • val1val2  #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}

 

posted @ 2012-02-20 13:56  贺满  阅读(943)  评论(0编辑  收藏  举报