Latest web development tutorials

Ruby tipe data

bab ini kita akan memperkenalkan Ruby tipe data dasar.

Ruby didukung tipe data termasuk Nomor dasar, String, Ranges, Simbol, dan benar, salah, dan nihil nilai-nilai khusus, serta dua struktur data penting --Array dan Hash.


Nilai Type (Number)

1, Integer (Integer)

Bilangan bulat dua, jika 31 atau kurang (empat byte), itu adalah Fixnum misalnya. Jika demikian, apakah contoh bignum.

Kisaran bilangan bulat dari -2 atau -2 30-2 30-1 62-2 62-1. Integer dalam kisaran ini adalah kelasFixnumobjek bulat disimpan di luar lingkup kelas ini objekbignum.

Anda dapat menggunakan simbol pembukaan opsional di depan integer, indikator dasar opsional (0 untuk oktal, 0x sesuai hex, 0b sesuai dengan biner), diikuti oleh serangkaian angka. karakter garis bawah string numerik diabaikan.

Anda bisa mendapatkan karakter ASCII atau nilai integer urutan escape dengan tanda tanya.

contoh

123                  # Fixnum 十进制
1_234                # Fixnum 带有下划线的十进制
-500                 # 负的 Fixnum
0377                 # 八进制
0xff                 # 十六进制
0b1011               # 二进制
"a".ord              # "a" 的字符编码
?\n                  # 换行符(0x0a)的编码
12345678901234567890 # Bignum
#整型 Integer 以下是一些整型字面量 
#字面量(literal):代码中能见到的值,数值,bool值,字符串等都叫字面量 
#如以下的0,1_000_000,0xa等 
a1=0 

#带千分符的整型 
a2=1_000_000 

#其它进制的表示 
a3=0xa 
puts a1,a2 
puts a3 

#puts print 都是向控制台打印字符,其中puts带回车换行符 
=begin 
这是注释,称作:嵌入式文档注释 
类似C#中的/**/ 
=end 

mengapung

dukungan Ruby floating point. Mereka angka dengan desimal. Mengambangmengambangadalah kelas objek, dan bisa salah satu dari berikut ini.

contoh

123.4                # 浮点值
1.0e6                # 科学记数法
4E20                 # 不是必需的
4e+20                # 指数前的符号
#浮点型 
f1=0.0 
f2=2.1 
f3=1000000.1 
puts f3  

operasi aritmatika

operator aritmatika: + - * /; operator untuk indeks **

Indeks tidak perlu integer, misalnya

#指数算术 
puts 2**(1/4)#1与4的商为0,然后2的0次方为1 
puts 16**(1/4.0)#1与4.0的商为0.25(四分之一),然后开四次方根 

tipe string

Ruby string hanya urutan 8-bit byte, yang merupakan objek class String.

String tanda kutip ganda dan garis miring terbalik memungkinkan string pengganti tidak diperbolehkan untuk mengganti tanda kutip tunggal, dan hanya memungkinkan penggunaan \\ dan \ 'dua backslash.

contoh

contoh

#! / Usr / bin / ruby ​​w

puts 'melarikan diri menggunakan "\\"';
menempatkan 'Itu \' s benar ';

Menjalankan contoh »

Ini menghasilkan hasil sebagai berikut:

escape using "\"
That's right

Anda dapat urutan# {expr} diganti dengan string ekspresi Ruby sewenang-wenang menggunakan.Di sini, expr dapat berupa ekspresi Ruby.

#! / Usr / bin / ruby ​​w

menempatkan "Perkalian Nilai: # {24 * 60 * 60}";

Ini menghasilkan hasil sebagai berikut:

Perkalian Nilai: 86400
#!/usr/bin/ruby -w

name="Ruby" 
puts name 
puts "#{name+",ok"}" 

output adalah:

Ruby
Ruby,ok

backslash

Tabel berikut mencantumkan Ruby backslash didukung:

符号表示的字符
\n换行符 (0x0a)
\r回车符 (0x0d)
\f换页符 (0x0c)
\b退格键 (0x08)
\a报警符 Bell (0x07)
\e转义符 (0x1b)
\s空格符 (0x20)
\nnn八进制表示法 (n 是 0-7)
\xnn十六进制表示法 (n 是 0-9、a-f 或 A-F)
\cx, \C-xControl-x
\M-xMeta-x (c | 0x80)
\M-\C-xMeta-Control-x
\x字符 x

Untuk rincian lebih lanjut tentang string Ruby, lihat Ruby String (String) .

susunan

Array literal berdasarkan [] untuk menentukan dipisahkan koma, dan dukungan berbagai definisi.

  • (1) melalui array [] akses Indeks
  • (2) dengan tugas untuk menyisipkan, menghapus, mengganti elemen
  • (3) + - No. merge dan menghapus elemen, dan koleksi sebagai koleksi baru muncul
  • (4) oleh elemen data tambahan resolusi asli <<
  • (5) dengan mengulangi jumlah elemen array *
  • (6) | dan ampersand melakukan operasi serikat dan persimpangan (perhatikan urutan)

contoh:

contoh

#! / Usr / bin / ruby
ary = [ "fred", 10, 3.14, "Ini adalah string", "elemen terakhir",]
ary.each melakukan | i |
menempatkan i
akhir

Menjalankan contoh »

Ini menghasilkan hasil sebagai berikut:

fred
10
3.14
Ini adalah string
elemen terakhir

Untuk rincian lebih lanjut tentang array Ruby, lihat Ruby Array (Array) .

Jenis hash

Ruby hash ditempatkan dalam seri kawat gigi pasangan kunci / nilai, menggunakan koma antara kunci dan nilai dan urutan => pemisahan. Trailing koma diabaikan.

contoh

contoh

#! / Usr / bin / ruby

HSH = warna = { "red" => 0xf00, "hijau" => 0x0f0, "biru" => 0x00f}
hsh.each lakukan | key, value |
kunci cetak, "adalah", nilai, "\ n"
akhir

Menjalankan contoh »

Ini menghasilkan hasil sebagai berikut:

red is 3840
green is 240
blue is 15

Untuk rincian lebih lanjut tentang hash Ruby, lihat Ruby hash (Hash) .

kisaran Jenis

Berbagai mewakili berbagai.

Kisaran adalah nilai awal dan nilai akhir dengan menetapkan untuk mewakili. Kisaran s..e dapat digunakan dan s ... e untuk membangun, atau dengan Range.new dibangun.

Dibangun menggunakan .. lari dari nilai awal kisaran untuk mengakhiri nilai (termasuk nilai-nilai akhir). ... Dibangun menggunakan berbagai lari dari nilai awal sampai akhir nilai (value end tidak termasuk). Ketika digunakan sebagai iterator untuk menggunakan rentang akan kembali setiap nilai dalam urutan.

Kisaran (1..5) berarti bahwa itu berisi nilai 1, 2, 3, 4, 5, rentang (1 ... 5) berarti bahwa itu berisi nilai 1, 2, 3, 4.

contoh

contoh

#! / Usr / bin / ruby

(10..15) .each melakukan | n |
print n, ''
akhir

Menjalankan contoh »

Ini menghasilkan hasil sebagai berikut:

10 11 12 13 14 15

Untuk rincian lebih lanjut tentang berbagai Ruby, lihat Ruby Range (Range) .