a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Ruby > 正文

Ruby基礎語法初探

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

創建字符串對象有多種途徑,最常用的可能是使用字符串字面量(literals),即一組單引號或雙引號之間的字符序列。這兩種形式的區別在于,當構造字面量時,Ruby對字符串所做處理的多少有所不同。Ruby對單引號串處理得很少。除了極少的一些例外。鍵入到字符串字面量的內容就構成了這個字符串的值。

Ruby對雙引號字符串有更多的處理。首先,它尋找以反斜線開始的序列,并用二進制值替換它們。其中最常見的是/n,它會被回車換行符替換掉。當一個包含回車換行符的字符串輸出時,/n會強制換行。

puts "And good night, /nGrandma"

輸出結果:

And good night,Grandma


Ruby對雙引號字符串所做的第二件事情是字符串內的表達式內插(expression interpolation),#{表達式}序列會被“表達式”的值替換。可以用這種方式重寫前面的方法。

def say_goodnight(name) result = "Good night,#{name}" return resultendputs say_goodnight('Pa')

輸出結果:

 Good night, Pa

Ruby 構建這個字符串對象時,它找到name的當前值并把它替換到字符串中。任意復雜的表達式都允許放在#{...}結構中。這里調用在所有字符串中定義的capitalize方法,將參數的首字母改為大寫之后輸出。

def say_goodnight(name) result = "Good night,#{name.capitalize}" return resultendputs say_goodnight('uncle')

輸出結果:

Good night, Uncle

為了方便起見,如果表達式只是一個全局實例或類變量,則不需要提供花括號。

$greeting = "Hello"   #$greeting 是全局變量@name = "Prudence"  #@name 是實例變量puts "#$greeting,#@name"

輸出結果:

Hello,Prudence

可以進一步簡化這個方法。Ruby方法所返回的值,是最后一個被求值的表達式的值,所以可以把這個臨時變量和return語句都去掉。

def say_goodnight(name) "Good night,#{name}"endputs say_goodnight('Ma')

輸出結果:

Good night, Ma

Ruby使用一種命名慣例來區分名稱的用途:名稱的第一個字符顯示這個名稱如何被使用。局部變量、方法參數和方法名稱都必須以小寫字母或下劃線開始。全局變量都有美元符號($)為前綴,而實例變量以“at”(@)符號開始。類變量以兩個“at”(@@)符號開始。最后,類名稱、模塊名稱和常量都必須以一個大寫字母開始。

從上述規定的初始字符之后開始,名稱可以是字母、數字和下劃線的任意組合(但跟在@符號之后的符號不能是數字)。但是按慣例,包含多個單詞的實例變量名稱在詞與詞之間使用下劃線連接,包含多個單詞的類變量名稱使用混合大小寫(每個單次首字母大寫)。方法名稱可以?、!和=字符結束。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩在线观看视频一区 | 亚洲一二三区在线观看 | 久久成人国产 | 奇米精品一区二区三区在线观看 | 久久国产成人 | 国产91精品一区二区麻豆网站 | 精品一区不卡 | 高清一区二区三区 | 国产伦精品一区二区三区四区视频 | 最近免费中文字幕大全免费版视频 | 国产精品久久精品 | a级片网站 | 欧美国产日韩一区 | 天天干天天看天天操 | 5060毛片| 一级做a爰片性色毛片 | 九九亚洲精品 | 91影库| 草草视频在线观看 | 久久久av| 久久精品视频网 | 精品一区二区三区日本 | 一区二区日本 | 在线亚洲观看 | 蜜臀av性久久久久av蜜臀妖精 | 欧美精品二区中文乱码字幕高清 | 色播视频在线观看 | 99精品视频一区二区三区 | 精品专区 | 天天操天天干天天爽 | 欧美精品一区视频 | 亚洲国产字幕 | 不卡视频一区 | 夜夜躁日日躁狠狠久久88av | 久久一区二区三区精品 | 色花av| 999在线观看精品免费不卡网站 | 久久久久综合狠狠综合日本高清 | 一区二区免费在线播放 | 久久精品伊人 | 免费xxxxx在线观看网站软件 |