亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Ruby > 正文

Terry七月Ruby讀書筆記(比較詳細)第1/4頁

2020-10-29 19:47:06
字體:
來源:轉載
供稿:網友

Page 3 概述

¨         解釋執行:Python,Ruby,交互性很好;

¨         編譯執行:Pascal, C,速度較快。

n         本地執行,如C,C++;

n         虛擬機執行,如Java, C#。

 

¨         動態語言,如JavaScriptRuby;

¨         靜態語言,如C++,Java。

 

語言

¨         語法

關鍵字

¨         語義

¨         語用

 

松本行弘(Matz) 1993

Ruby [`ru:bi](紅寶石)

 

 

Ruby 吸取了 perl 的正則表達式, python 的簡單性可讀性,smalltalk 的純面向對象語法和單繼承,LISP 的無窮嵌套的語法,Java的線程…

 

Page 14 上手

XP

Cmd

C:/Documents and Settings/Administrator>ruby -v

ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32]

 

第一種方式:ruby命令

C:/Documents and Settings/Administrator>ruby -e 'print "hello world"'

hello world

 

ruby               運行ruby;

-e                  執行后面的ruby腳本程序;

print               打印顯示;

hello,world     要輸出的內容。

 

第二種方式:irb交互執行

C:/Documents and Settings/Administrator>irb

irb(main):001:0> print "hello world"

hello world=> nil

irb(main):002:0> exit

 

exit: 退出irb交互式環境

 

第三種方式:創建ruby腳本

C:/Documents and Settings/Administrator>copy con helloworld.rb

print "hello world"

print "3*7=",3*7

^Z

已復制         1 個文件。

 

C:/Documents and Settings/Administrator>helloworld.rb

hello world3*7=21

 

Page 17 IDE

¨         Eclipse + RDTRuby Development Tools

¨         FreeRIDE+SciTE

1.在SciTE編輯Ruby代碼;

2.保存為 .rb文件;

3.菜單欄,工具->運行或者F5;

Page 18 語法

1.      注釋

單行注釋       #                多行注釋     =begin            =end

Ruby的內嵌文檔(Rdoc)注釋,用ri命令從源文件中產生文檔。

Rdoc內嵌在ruby代碼之中的,可以轉換為html文檔。

ri命令,用來查看函數說明、類說明。函數說明、類說明應該放置在=begin和=end之中。注意:“=begin”一定要寫在行首,也就是說,這一行前六個字符是“=begin”,之前不允許有空格。

2.      分行

用分號;表示語句結束。

一行多個語句,用分號隔開,最后一個語句,分號可以省略,換行符表示一行結束。

語句太長,可以在行末用符號 / ,表示續行。

3.      分隔符

名稱

符號

用途

分號

;

用來分隔一行中的多個語句

圓括號

(  )

提高優先級;定義方法時容納參數列表

空格

 

分隔字符;在可省略()的地方,代替()

逗號

,

隔開多個參數

.

將對象與它的方法隔開

緊連的兩個冒號

::

域作用符,將模塊(類)與它的常量隔開

4.      關鍵字

Ruby中的關鍵字如下:

模塊定義:

module

異常處理:

rescue,ensure

類定義:

class

對象引用:

super,self

方法定義:

def,undef

塊的起始:

begin/end

檢查類型:

defined?

嵌入模塊:

BEGIN,END

邏輯值和空值:

true,false,nil

文件相關:

__FILE__,__LINE__

邏輯判斷:

not,and,or

方法返回:

return

條件語句:

if,then,else,elsif,case,when,unless

別名:

alias

循環語句:

for,in,while,until,next,break,do,redo,retry,yield

BEGIN模塊相當于C語言中的宏,END模塊用來作一些收尾工作。有了

require,include,應該取消BEGIN和END的語法定義。

5.      運算符

6.      標識名:

常量,變量,方法,類和模塊;

大小寫敏感;

標識名第一個字符表明這個名字的用法。

局部變量、方法參數和方法名稱

以小寫字母開頭或者下劃線開頭;

類名、模塊名和常量

用大寫字母開頭。

全局變量

以美元符為前綴$;

實例變量

以@開頭;

類變量

用@@開頭;

詞首字母后面可以是字母、數字和下劃線的任意組合;

@后面不可以直接跟數字。

Ruby程序代碼用7位ACSII碼來表示,通過語言擴展來支持 EUC,SJIS或UTF-8等8位編碼系統。Ruby2.0版本將支持16位的Unicode編碼。

7.      類庫

可以直接使用:

i) 關鍵字;

ii) require或者include包含的類庫中的類、方法;

iii)從父類中繼承得到的方法。

 

puts

每個參數后自動換行

print

不自動換行,換行用”/n”

printf

按格式輸出,不自動換行

gets

從鍵盤或文件中讀入數據

 

C:/Documents and Settings/Administrator>ruby -e 'puts "hello","world"'

hello

world

 

C:/Documents and Settings/Administrator>ruby -e 'printf "number:%f",3.2'

number:3.200000

 

 

注意:printf的參數之間用逗號隔開。

C:/Documents and Settings/Administrator>ruby -e ' printf "number:%4.3f,string %s

",1.5,"hello world"'

number:1.500,string hello world

 

8.      數據類型

類型

分類

說明及示例

數字

整數型

0        八進制,

0x  十六進制,0b  二進制

浮點型

字符串

單引號  ‘'

 

雙引號  “”

 

數組

從0開始,每個元素可以不同類型

例 [2.4,"thank you",[a,b,c],78]

區間

1..5

1,2,3,4,5

1…5

1,2,3,4

正則表達式

 

 

9.      賦值運算

交換變量a,b的值:

a,b=b,a;

注意括號:

a = (b = 1 + 2) + 3                #a=6 ,b=3

逗號,從左往右運算,分別賦給a,b,c

x = 0                           #x=0

a,b,c = x, (x+1), (x+2)           #a=0 ,b=1,c=2

10.  條件運算

==

等于

!=

不等于

eql?

比較兩個對象的值、類型是否相等

equal?

比較兩個對象在內存中地址是否相同

小于

大于

<=

小于等于

>=

大于等于

=~

匹配正則表達式

!~

斷言不匹配正則表達式

===

右邊的對象在左邊區間內

puts(0..9)===3.14  #true puts('a'..'f')==='c'    # true

<=>

比較兩個對象大小,大于1,等于0,小于-1.

Ruby里,nil和false為假,其它都為真。

 

11.  判斷語句

  1. 單行if語句

if    then    end

(    ) if

  1. 多行if語句

if    elsif    else    end

  1. unless條件語句

 

unless

 

if not

 

  1. case分支條件語句

 

case

when

when

else

end

 

12.  循環語句

單行while

(語句1;語句2;語句…)while條件

多行while

while  條件 

語句,語句 

end

until直到

until 跳出循環條件  語句

until 條件=while not (條件)

for…in循環

for  變量  in  對象

   語句1; 語句2 ;  語句…

end

 

break,next&redo&retry

在循環體內,如果遇到:

break

跳出當層循環;

next

忽略本次循環的剩余部分,開始下一次的循環;

redo

重新開始循環,還是從這一次開始;

retry

重頭開始這個循環體。

 

times , upto , downto , each ,step

語句

運行結果

3.times { print  "Hi!" }

#Hi!Hi!Hi! 

1.upto(9) {|i| print  i  if  i<7 }

#123456   

9.downto(1){|i| print  i  if  i<7 }

#654321

(1..9).each {|i| print  i  if  i<7}

#123456   

0.step(11,3) {|i| print  i  }

#0369     

 

C:/Documents and Settings/Administrator>irb

irb(main):001:0> 1.upto(9){|i| print i if i<7}

123456=> 1

irb(main):002:0> 9.downto(1){|i|print i if i<7}

654321=> 9

irb(main):003:0> (1..9).each {|i| print i if i<7}

123456=> 1..9

irb(main):004:0> 0.step(11,3) {|i| print i}

0369=> 0

 

13.  異常

Java

try…catch…finally…throw

Ruby

begin/end…rescue…ensure…raise

retry可以用在rescue中??梢灾挥胷escue或ensure,兩者都使用時,rescue必須在ensure前。

14.  線程 

1234下一頁閱讀全文
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人激情电影一区二区| 成人免费淫片视频软件| 亚州国产精品久久久| 日韩av色综合| 久久亚洲精品视频| 亚洲香蕉av在线一区二区三区| 亚洲人av在线影院| 动漫精品一区二区| 最近2019免费中文字幕视频三| 成人在线一区二区| 国产精品亚洲片夜色在线| 日韩av在线看| 欧美与欧洲交xxxx免费观看| 国产欧美日韩高清| 粉嫩av一区二区三区免费野| 狠狠躁夜夜躁人人爽超碰91| 欧美在线xxx| 91亚洲精品久久久久久久久久久久| 91精品国产综合久久香蕉的用户体验| 国产高清在线不卡| 久久精品成人动漫| 亚洲国产美女精品久久久久∴| 日韩av有码在线| 麻豆成人在线看| 亚洲第一二三四五区| 国产激情久久久久| 91久久嫩草影院一区二区| 日日狠狠久久偷偷四色综合免费| 欧美大片在线看免费观看| 久久综合久中文字幕青草| 国外成人在线直播| 日韩一级裸体免费视频| 欧美贵妇videos办公室| 亚洲精品第一国产综合精品| 欧美二区在线播放| 亚洲最大的成人网| 欧美性生活大片免费观看网址| 国产精品网址在线| 91精品国产高清久久久久久久久| 亚洲精品suv精品一区二区| 国产99久久久欧美黑人| 91久久综合亚洲鲁鲁五月天| 日韩成人激情视频| 91av免费观看91av精品在线| 亚洲美女免费精品视频在线观看| 亚洲成色www8888| 麻豆一区二区在线观看| 岛国视频午夜一区免费在线观看| 亚洲美女喷白浆| 91精品国产777在线观看| 国产精品视频地址| 国产女人18毛片水18精品| 国产欧美日韩中文字幕| 午夜精品久久久久久99热软件| 日韩中文在线中文网在线观看| 国产精品视频xxx| 亚洲国产精品人人爽夜夜爽| 日产精品久久久一区二区福利| 日韩精品在线观看一区| 亚洲第一男人天堂| 国产69精品99久久久久久宅男| 久久成年人视频| 欧美成人免费网| 在线电影欧美日韩一区二区私密| 国产精品丝袜白浆摸在线| 正在播放欧美视频| 91久热免费在线视频| 国产福利视频一区二区| 国产精品久久久一区| 福利二区91精品bt7086| 欧美老少做受xxxx高潮| 国产91在线播放| 欧美电影免费播放| 最新国产成人av网站网址麻豆| 久久久久久综合网天天| 一本色道久久88精品综合| 久久久久日韩精品久久久男男| 日韩av在线播放资源| 九九热在线精品视频| 亚洲自拍在线观看| 亚洲二区中文字幕| 日韩av日韩在线观看| 综合网日日天干夜夜久久| 亚洲欧洲一区二区三区久久| 亚洲一区二区三区在线免费观看| 日韩在线免费高清视频| 亚洲第一网站免费视频| 国产欧美精品在线播放| 久久全国免费视频| 欧美国产视频日韩| 国产91在线播放精品91| 日本老师69xxx| 欧美性猛交xxxx免费看漫画| 91精品视频免费观看| 久久久久久91香蕉国产| 国产精品久久久久久久久免费看| 午夜精品一区二区三区在线视| 国产成人高清激情视频在线观看| 91国在线精品国内播放| 国产精品影院在线观看| 91免费欧美精品| 热草久综合在线| 成人伊人精品色xxxx视频| 国产精品第3页| 国产三级精品网站| 国产精品99久久久久久久久久久久| 精品国模在线视频| 日韩av一区在线观看| 国产精品免费久久久久久| 国产精品久久一区主播| 国产一区二区成人| 国产精品第三页| 色爱精品视频一区| 欧美一级bbbbb性bbbb喷潮片| 992tv在线成人免费观看| 97在线免费观看| 中文在线不卡视频| www亚洲欧美| 91av在线免费观看视频| 亚洲精品不卡在线| 亚洲第一色中文字幕| 亚洲一区二区三区四区在线播放| 2019中文字幕全在线观看| 精品人伦一区二区三区蜜桃网站| 国产精品亚洲аv天堂网| 在线播放亚洲激情| 日韩免费观看高清| 久热精品视频在线| 国产精品18久久久久久麻辣| 亚洲性生活视频在线观看| 久久影视电视剧免费网站清宫辞电视| 日日摸夜夜添一区| 亚洲一级黄色av| 88国产精品欧美一区二区三区| 55夜色66夜色国产精品视频| 国产精品网站大全| 日韩欧美中文字幕在线观看| 欧洲午夜精品久久久| 国产精品视频中文字幕91| 亚洲国内精品视频| 亚洲欧美一区二区三区情侣bbw| 国产精品久久久久久久app| 日韩久久午夜影院| 欧美理论片在线观看| 国产亚洲精品91在线| 欧美性猛交xxxx乱大交极品| 中文字幕日韩av电影| 91色在线观看| 日韩经典第一页| 国内伊人久久久久久网站视频| 国内精品久久久久久中文字幕| 欧美一区亚洲一区| 国产精品流白浆视频| 国产成人啪精品视频免费网| 国产成人精品久久| 久久精品人人做人人爽| 日韩视频免费中文字幕| 亚洲人高潮女人毛茸茸| 国产亚洲精品日韩| 91影院在线免费观看视频| 亚洲精品视频免费在线观看| 国产精品狠色婷| 亚洲成人国产精品| 日韩在线欧美在线国产在线|