国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 編程 > Ruby > 正文

深入分析Ruby 變量

2020-10-29 19:33:45
字體:
來源:轉載
供稿:網(wǎng)友

變量是持有可被任何程序使用的任何數(shù)據(jù)的存儲位置。

Ruby 支持五種類型的變量。

  • 一般小寫字母、下劃線開頭:變量(Variable)。
  • $開頭:全局變量(Global variable)。
  • @開頭:實例變量(Instance variable)。
  • @@開頭:類變量(Class variable)類變量被共享在整個繼承鏈中
  • 大寫字母開頭:常數(shù)(Constant)。

Ruby 全局變量

全局變量以 $ 開頭。未初始化的全局變量的值為 nil,在使用 -w 選項后,會產(chǎn)生警告。

給全局變量賦值會改變?nèi)譅顟B(tài),所以不建議使用全局變量。

下面的實例顯示了全局變量的用法。

#!/usr/bin/ruby# -*- coding: UTF-8 -*- $global_variable = 10class Class1 def print_global   puts "全局變量在 Class1 中輸出為 #$global_variable" endendclass Class2 def print_global   puts "全局變量在 Class2 中輸出為 #$global_variable" endend class1obj = Class1.newclass1obj.print_globalclass2obj = Class2.newclass2obj.print_global

在這里,$global_variable 是全局變量。這將產(chǎn)生以下結果:

全局變量在 Class1 中輸出為 10
全局變量在 Class2 中輸出為 10

注意:在 Ruby 中,您可以通過在變量或常量前面放置 # 字符,來訪問任何變量或常量的值。

Ruby 實例變量

實例變量以 @ 開頭。未初始化的實例變量的值為 nil,在使用 -w 選項后,會產(chǎn)生警告。

下面的實例顯示了實例變量的用法。

#!/usr/bin/ruby class Customer  def initialize(id, name, addr)   @cust_id=id   @cust_name=name   @cust_addr=addr  end  def display_details()   puts "Customer id #@cust_id"   puts "Customer name #@cust_name"   puts "Customer address #@cust_addr"  endend # 創(chuàng)建對象cust1=Customer.new("1", "John", "Wisdom Apartments, Ludhiya")cust2=Customer.new("2", "Poul", "New Empire road, Khandala") # 調用方法cust1.display_details()cust2.display_details()

在這里,@cust_id、@cust_name 和 @cust_addr 是實例變量。這將產(chǎn)生以下結果:

Customer id 1
Customer name John
Customer address Wisdom Apartments, Ludhiya
Customer id 2
Customer name Poul
Customer address New Empire road, Khandala

Ruby 類變量

類變量以 @@ 開頭,且必須初始化后才能在方法定義中使用。

引用一個未初始化的類變量會產(chǎn)生錯誤。類變量在定義它的類或模塊的子類或子模塊中可共享使用。

在使用 -w 選項后,重載類變量會產(chǎn)生警告。

下面的實例顯示了類變量的用法。

#!/usr/bin/ruby class Customer  @@no_of_customers=0  def initialize(id, name, addr)   @cust_id=id   @cust_name=name   @cust_addr=addr  end  def display_details()   puts "Customer id #@cust_id"   puts "Customer name #@cust_name"   puts "Customer address #@cust_addr"  end  def total_no_of_customers()    @@no_of_customers += 1    puts "Total number of customers: #@@no_of_customers"  endend # 創(chuàng)建對象cust1=Customer.new("1", "John", "Wisdom Apartments, Ludhiya")cust2=Customer.new("2", "Poul", "New Empire road, Khandala") # 調用方法cust1.total_no_of_customers()cust2.total_no_of_customers()

在這里,@@no_of_customers 是類變量。這將產(chǎn)生以下結果:

Total number of customers: 1
Total number of customers: 2

Ruby 局部變量

局部變量以小寫字母或下劃線 _ 開頭。局部變量的作用域從 class、module、def 或 do 到相對應的結尾或者從左大括號到右大括號 {}。

當調用一個未初始化的局部變量時,它被解釋為調用一個不帶參數(shù)的方法。

對未初始化的局部變量賦值也可以當作是變量聲明。變量會一直存在,直到當前域結束為止。局部變量的生命周期在 Ruby 解析程序時確定。

在上面的實例中,局部變量是 id、name 和 addr。

Ruby 常量

常量以大寫字母開頭。定義在類或模塊內(nèi)的常量可以從類或模塊的內(nèi)部訪問,定義在類或模塊外的常量可以被全局訪問。

常量不能定義在方法內(nèi)。引用一個未初始化的常量會產(chǎn)生錯誤。對已經(jīng)初始化的常量賦值會產(chǎn)生警告。

#!/usr/bin/ruby# -*- coding: UTF-8 -*- class Example  VAR1 = 100  VAR2 = 200  def show    puts "第一個常量的值為 #{VAR1}"    puts "第二個常量的值為 #{VAR2}"  endend # 創(chuàng)建對象object=Example.new()object.show

在這里,VAR1 和 VAR2 是常量。這將產(chǎn)生以下結果:

第一個常量的值為 100
第二個常量的值為 200

Ruby 偽變量

它們是特殊的變量,有著局部變量的外觀,但行為卻像常量。您不能給這些變量賦任何值。

  • self: 當前方法的接收器對象。
  • true: 代表 true 的值。
  • false: 代表 false 的值。
  • nil: 代表 undefined 的值。
  • __FILE__: 當前源文件的名稱。
  • __LINE__: 當前行在源文件中的編號。

以上就是深入分析Ruby 變量的詳細內(nèi)容,更多關于Ruby 變量的資料請關注武林網(wǎng)其它相關文章!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
欧美黑人乱大交ⅹxxxxx| 免费国产视频| 国产爆初菊在线观看免费视频网站| 欧美日韩**字幕一区| av在线首页| 九九热视频精品在线观看| 色综合久久五月天| 欧美大交乱xxxx| 国产特黄在线| 轻轻色免费在线视频| 日本最新在线视频| 亚洲日本伊人| 99热最新网址| 亚洲精品一线| 国产精品毛片一区二区三区四区| 日本不卡视频一区二区| 国产精品福利视频一区二区三区 | 牛牛热在线视频| 国产三级自拍| 国产美女福利在线| 91中文字幕网| 成在在线免费视频| 日本在线观看| eeuss影院在线观看| 国产激情视频一区二区| 国产精品自产拍在线网站| 四虎影院成人| 亚洲国产成人综合| 精品成人一区二区三区免费视频| 国产精品一区二区婷婷| 狂野欧美性猛交xxxx乱大交| 一本久久精品| av在线天堂| 人人干在线视频| www在线视频观看| 亚洲日本伊人| www狠狠操| 日本成人在线播放| 性欧美精品xxxx| 亚洲欧美综合乱码精品成人网| 国产黄色在线免费观看| 国产三级做爰在线观看| 国产小视频免费在线观看| 国产蜜臀av在线播放| 国产乱子视频| 国产精品欧美色图| 国产精品视频一区二区三区麻豆| 最新国产在线| 国产黄色在线网站| 永久av在线| 羞羞视频在线免费看| 亚洲欧美精品日韩欧美| 免费在线黄色网址| 99热最新网址| 91精品专区| www.操.com| 成人欧美日韩| 91黄色在线| 久久精品视频观看| 国产人成精品| 青青草免费观看免费视频在线| 国产在线观看av| 2021av天天| 九九热在线观看| 69视频在线观看| av在线日韩国产精品| 九九在线观看免费视频| 国产网红女主播精品视频| av一本在线| 国产三级在线播放| 黄网址在线永久免费观看| 99福利在线| 国产精品伦一区二区三区视频| 免费在线播放av| 国产超碰在线| 国产乱xxⅹxx国语对白| 亚洲欧美国产另类首页| 国产午夜电影| 非洲黑人最猛性xxxx交| 精品卡一卡卡2卡3网站| 狠狠插狠狠操| a视频在线播放| 国产福利三区| 国产午夜三区视频在线| 激情亚洲综合网| www在线观看播放免费视频日本| 国产福利图片| 国产精品人人| 国产一区二区三区福利| 欧美日韩一区二区三区在线播放 | 最近高清中文在线字幕在线观看| 精品电影在线| 国产精品被窝福利一区| 免费观看久久久久| 在线观看午夜av| 91国内精品久久久久| 18av在线播放| 国产超级va在线视频| 999国产在线视频| 精品一区二区三区在线成人| 国产国产人免费人成免费视频| 国产视频中文字幕在线观看| 天天av综合网| 中文字幕在线免费看| 中文字幕专区| 国产69精品久久久久孕妇国产69久久 | 国产在线观看av| 麻豆国产在线视频| 久久久久久77777| 丁香视频免费观看| 天堂中文资源在线| 国产经典自拍视频在线观看 | 国产98在线| 伊人影院在线视频| 青青九九免费视频在线| 国产在线激情视频| 国产亚洲精品午夜高清影院| 国产极品视频| 日韩不卡高清| 国产一级片在线播放| 在线免费观看污| 麻豆电影传媒二区| 国产日本视频| 亚洲精品自拍区在线观看| www在线观看播放免费视频日本| 欧美日韩视频精品二区| 国产在线视频网站| 69视频在线| 轻轻色免费在线视频| 国产一卡2卡3卡免费网站| 精精国产xxxx视频在线中文版| 青青草免费在线观看| 国产日本韩国在线播放| av在线免费观看网| 国产精品178页| 黄色av免费看| 小说区乱图片区| 国产精品二线| 国产精品一区牛牛影视| av在线首页| 国产三级在线播放| 性网站在线播放| 91精选福利| 国产福利微拍精品一区二区| 国产伦精品一区二区三区高清版禁| 精品无人区乱码1区2区3区免费| 成 人免费视频播放| 99色在线观看| 国产精品欧美韩国日本久久| 国产在线观看a视频| 天海翼中文字幕| 中文字幕4区| 精品推荐国产麻豆剧传媒| 91caoporn在线| 天堂在线看视频| 最近免费中文字幕在线第一页 | 国产三级在线观看| 成人日韩欧美| 国产在线日本| 国产麻豆精品视频一区二区 | 在线中文资源天堂| 国产欧美日韩精品综合| 国产美女高潮一区二区三区| 久久国产精品久久久久久小说| 亚洲精品成人a| 日本电影全部在线观看网站视频| 伊人狠狠av| xxxx视频在线| 麻豆网站在线免费观看| 女同一区二区免费aⅴ| 日本h片在线观看| 九九热免费视频| 国产乱码在线| 国产精品18久久久久久久久久| 精品推荐国产麻豆剧传媒| 在线免费看av| 麻豆网站在线| 国产天堂视频| 99高清免费国产自产拍| v天堂福利视频在线观看| 久久久久久五月天久久久久久久久| 国产女人伦码一区二区三区不卡| 国产精品一区牛牛影视| 精品视频麻豆入口| 玖玖在线视频| 精品视频三区| 福利视频网站导航| 99热免费观看| 最近中文字幕mv免费高清在线| 在线免费观看污| 国产精品天堂| av影视在线看| 午夜视频99| 日本天堂影院在线视频| 国产网红在线| 本道综合精品| 亚洲欧美一区二区三区在线播放| 综合图区亚洲白拍在线| 欧美色欧美亚洲另类二区精品| 国产精品被窝福利一区 |