數(shù)值類型(Number)
整型(Integer)
整型分兩種,如果在31位以內(nèi)(四字節(jié)),那為Fixnum實(shí)例。如果超過,即為Bignum實(shí)例。
整數(shù)范圍從 -230 到 230-1 或 -262 到 262-1。在這個(gè)范圍內(nèi)的整數(shù)是類 Fixnum 的對象,在這個(gè)范圍外的整數(shù)存儲(chǔ)在類 Bignum 的對象中。
您可以在整數(shù)前使用一個(gè)可選的前導(dǎo)符號,一個(gè)可選的基礎(chǔ)指標(biāo)(0 對應(yīng) octal,0x 對應(yīng) hex,0b 對應(yīng) binary),后跟一串?dāng)?shù)字。下劃線字符在數(shù)字字符串中被忽略。
您可以獲取一個(gè) ASCII 字符或一個(gè)用問號標(biāo)記的轉(zhuǎn)義序列的整數(shù)值。
實(shí)例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
123 # Fixnum 十進(jìn)制 1_234 # Fixnum 帶有下劃線的十進(jìn)制 - 500 # 負(fù)的 Fixnum 0377 # 八進(jìn)制 0xff # 十六進(jìn)制 0b1011 # 二進(jìn)制 "a" .ord # "a" 的字符編碼 ?\n # 換行符(0x0a)的編碼 12345678901234567890 # Bignum #整型 Integer 以下是一些整型字面量 #字面量(literal):代碼中能見到的值,數(shù)值,bool值,字符串等都叫字面量 #如以下的0,1_000_000,0xa等 a1= 0 #帶千分符的整型 a2= 1_000_000 #其它進(jìn)制的表示 a3=0xa puts a1,a2 puts a3 #puts print 都是向控制臺(tái)打印字符,其中puts帶回車換行符 <br>=begin <br>這是注釋,稱作:嵌入式文檔注釋 <br>類似C#中的/**/ <br>=end |
浮點(diǎn)型
Ruby 支持浮點(diǎn)數(shù)。它們是帶有小數(shù)的數(shù)字。浮點(diǎn)數(shù)是類 Float 的對象,且可以是下列中任意一個(gè)。
實(shí)例
1
2
3
4
|
123 . 4 # 浮點(diǎn)值 1 .0e6 # 科學(xué)記數(shù)法 4E20 # 不是必需的 4e+ 20 # 指數(shù)前的符號 |
1
2
3
4
5
|
#浮點(diǎn)型 f1= 0 . 0 f2= 2 . 1 f3= 1000000 . 1 puts f3 |
算術(shù)操作
加減乘除操作符:+-*/;指數(shù)操作符為**
指數(shù)不必是整數(shù),例如
1
2
3
|
#指數(shù)算術(shù) puts 2 **( 1 / 4 ) #1與4的商為0,然后2的0次方為1 puts 16 **( 1 / 4 . 0 ) #1與4.0的商為0.25(四分之一),然后開四次方根 |
Ruby 常量
常量以大寫字母開頭。定義在類或模塊內(nèi)的常量可以從類或模塊的內(nèi)部訪問,定義在類或模塊外的常量可以被全局訪問。
常量不能定義在方法內(nèi)。引用一個(gè)未初始化的常量會(huì)產(chǎn)生錯(cuò)誤。對已經(jīng)初始化的常量賦值會(huì)產(chǎn)生警告。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#!/usr/bin/ruby # -*- coding: UTF-8 -*- class Example VAR1 = 100 VAR2 = 200 def show puts "第一個(gè)常量的值為 #{VAR1}" puts "第二個(gè)常量的值為 #{VAR2}" end end # 創(chuàng)建對象 object=Example. new () object.show |
在這里,VAR1 和 VAR2 是常量。這將產(chǎn)生以下結(jié)果:
1
2
|
第一個(gè)常量的值為 100 第二個(gè)常量的值為 200 |