so.java

          so.java

          基本的ruby語法

          1.     基本的ruby語法

          1.1      變量、常量和類型

          1)      定義變量

          變量類型

          描述

          示例

          局部變量(或偽變量)

          以小寫字母或下劃線卡頭

          var    _var

          全局變量

          $開頭

          $var

          類變量

          類中定義,以@@開頭

          @@var

          實(shí)例變量

          對(duì)象中定義,以@開頭

          @var

          常量

          以大寫字母開頭

          Var

          2) 變量內(nèi)插

            在雙引號(hào)內(nèi)使用“#{變量名}”內(nèi)插變量

          a = 2

          b = 3

          puts "#{a} + #{b} = #{a+b}"  #輸入結(jié)果為:2 + 3 = 5

           

          1.2      注釋

          1)單行注釋:以#開頭,如: #注釋內(nèi)容

          2)多行注釋:在=begin =end 之間定義,如:

          =begin

          注釋內(nèi)容

          =end

          1.3    循環(huán)和分支

          1.3.1        條件語句

          If 形式

          unless 形式

          a =1 if y==3

          a=1 unless y!=3

          x= if a > 0 then b else c end

          x= unless a<=0 then a else b end

           if x<5 then

            a =1

          else

             a =2

          end

          unless x<5 then

             a =2

          else

             a =1

          end

           

          1.3.2        循環(huán)結(jié)構(gòu)

          #while循環(huán)

          i= 0

          while i< list.size do

          print “#list[i] ”

          I += 1

          end

          #until循環(huán)

          i= 0

          until i == list.size do

          print “#list[i]”

          i += 1

          end

          #for循環(huán)

          for x in lisy do

           print “#{x}”

          end

          #each循環(huán)

          list.each do |x|

           print “#{x}”

          end

          #loop循環(huán)

          i = 0

          n = list.size-1

          loop do

          print “#{list[i]}”

          i += 1

          break id i > n

          end

          #times循環(huán)

          n = list.size

          n.times do |i|

           print “#{list[i]}”

          end

          #upto循環(huán)

          n =list.size–1

          0.upto(n) do |i|

           print “#{list[i]}”

          end

          #each_index循環(huán)

          list.each_index do |x|

           print “#{list[x]}”

          end

           

          1.3.3        異常

          begin

              x = Math.sqrt(y/z)       

          rescue ArgumentError       #匹配錯(cuò)誤類型

              puts "Error taking square root"

          rescue ZeroDivisionError     #匹配錯(cuò)誤類型

              puts "Attempted division by zero"

          else

              puts "Other Error"

          ensure

              #這部分代碼在最后一定會(huì)執(zhí)行

          end

           

          1.3.4       

          class Hello #類名必須以大寫字母開頭

           @@myname = "John"   #類變量

           

           def initialize(name,phone)

                @name,@phone = name,phone #定義實(shí)例變量

           end

           

           def hello #定義類方法

              puts "#{@name}的電話是#{@phone}" 

           end

          end

           

          f = Hello.new("Tom","13100000000") #創(chuàng)建類對(duì)象

          f.hello #調(diào)用類方法,結(jié)果為:Tom的電話是13100000000

           

          1.3.5        模塊

          方法

          說明

          include ‘watir’

          將模塊的功能添加到當(dāng)前空間中,不加載已加載的文件

          extend ‘watir’

          將模塊的函數(shù)添加到對(duì)象中

          load ‘watir’

          讀取文件,并將其插入到源文件的當(dāng)前位置,以便從這個(gè)位置開始就可以使用其定義

           

          1.3.6        case語句

          case x

           when 1..10              #匹配數(shù)字

              puts "First branch"

           when foobar()           #批量方法返回的值

              puts "Second branch"

           when /^hel.*/           #匹配正則表達(dá)式

              puts "Third branch"

           else  

              puts "Last branch"

          end

           

          posted on 2009-01-18 11:02 so.java 閱讀(3668) 評(píng)論(1)  編輯  收藏

          評(píng)論

          # re: 基本的ruby語法 2009-10-05 08:47 vsd

          good  回復(fù)  更多評(píng)論   


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2009年1月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          java study

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 曲麻莱县| 乡宁县| 南丰县| 阿勒泰市| 增城市| 德保县| 崇明县| 拜泉县| 三都| 久治县| 鹤壁市| 吴忠市| 南城县| 宜春市| 海丰县| 赤水市| 刚察县| 黄骅市| 翁牛特旗| 北宁市| 建平县| 乳源| 大新县| 郧西县| 砚山县| 和平县| 抚州市| 板桥市| 阜平县| 卢氏县| 海原县| 嵊州市| 绥阳县| 衡水市| 兖州市| 旬邑县| 屏边| 辛集市| 海伦市| 双桥区| 巴塘县|