sintaks ruby


Mari kita tulis program Ruby yang ringkas. Semua sambungan fail Ruby ialah .rb. Jadi, letakkan kod sumber berikut dalam fail test.rb.

Instance

#!/usr/bin/ruby -w

puts "Hello, Ruby!";

Run Instance»

Klik butang "Run Instance" untuk melihat contoh dalam talian

Di sini, diandaikan bahawa anda sudah mempunyai penterjemah Ruby yang tersedia dalam direktori /usr/bin anda. Sekarang, cuba jalankan program ini seperti berikut:

$ ruby test.rb

Ini akan menghasilkan keputusan berikut:

Hello, Ruby!

Anda telah melihat program Ruby yang mudah, sekarang mari kita lihat beberapa konsep Asas Ruby yang berkaitan dengan sintaks:

Whitespace dalam program Ruby

Whitespace characters dalam kod Ruby, seperti ruang dan tab, biasanya diabaikan melainkan ia muncul dalam rentetan Hanya kemudian ia tidak akan diabaikan. Walau bagaimanapun, kadangkala ia digunakan untuk menerangkan kenyataan yang samar-samar. Tafsiran ini menghasilkan amaran apabila pilihan -w didayakan.

Contoh:

a + b 被解释为 a+b (这是一个局部变量)
a  +b 被解释为 a(+b) (这是一个方法调用)

Tamat baris dalam program Ruby

Ruby mentafsir koma bertitik dan baris baharu sebagai penghujung pernyataan. Walau bagaimanapun, jika Ruby menemui pengendali seperti +, -, atau garis miring ke belakang pada penghujung baris, ia menunjukkan kesinambungan pernyataan.

Pengecam Ruby

Pengecam ialah nama pembolehubah, pemalar dan kaedah. Pengecam Ruby adalah sensitif huruf besar-besaran. Ini bermakna Ram dan RAM ialah dua pengecam berbeza dalam Ruby.

Nama pengecam Ruby boleh mengandungi huruf, nombor dan aksara garis bawah (_).

Perkataan Terpelihara

Jadual berikut menyenaraikan perkataan terpelihara dalam Ruby. Perkataan terpelihara ini tidak boleh digunakan sebagai nama pemalar atau pembolehubah. Walau bagaimanapun, ia boleh digunakan sebagai nama kaedah.

BEGINdonextthen
ENDelseniltrue
aliaselsifnotundef
andendorunless
beginensureredountil
breakfalserescuewhen
caseforretrywhile
classifreturnwhile
definself__FILE__
defined?modulesuper__LINE__

Here Document in Ruby

"Here Document" merujuk kepada mencipta rentetan berbilang baris. Selepas <<, anda boleh menentukan rentetan atau pengecam untuk menamatkan rentetan dan semua baris selepas baris semasa sehingga penamat ialah nilai rentetan.

Jika penamat disertakan dalam petikan, jenis petikan menentukan jenis rentetan berorientasikan baris. Sila ambil perhatian bahawa mesti tiada ruang antara <<

Berikut ialah contoh yang berbeza:

#!/usr/bin/ruby -w
# -*- coding : utf-8 -*-

print <<EOF
    这是第一种方式创建here document 。
    多行字符串。
EOF

print <<"EOF";                # 与上面相同
    这是第二种方式创建here document 。
    多行字符串。
EOF

print <<`EOC`                 # 执行命令
	echo hi there
	echo lo there
EOC

print <<"foo", <<"bar"	      # 您可以把它们进行堆叠
	I said foo.
foo
	I said bar.
bar

Cubalah»

Ini akan menghasilkan keputusan berikut:

    This is the first way of creating
    her document ie. multiple line string.
    This is the second way of creating
    her document ie. multiple line string.
hi there
lo there
        I said foo.
        I said bar.

Ruby MULA ​​penyataan

Sintaks

BEGIN {
   code
}

Pengisytiharankod akan dipanggil sebelum atur cara dijalankan.

Instance

#!/usr/bin/ruby

puts "This is main Ruby Program"

BEGIN {
   puts "Initializing Ruby Program"
}

Ini akan menghasilkan keputusan berikut:

Initializing Ruby Program
This is main Ruby Program

Ruby END Pernyataan

Syntax

rreee

Pernyataan kod akan dipanggil pada penghujung program.

Instance

END {
   code
}

Ini akan menghasilkan keputusan berikut:

#!/usr/bin/ruby

puts "This is main Ruby Program"

END {
   puts "Terminating Ruby Program"
}
BEGIN {
   puts "Initializing Ruby Program"
}

Komen Ruby

Ulasan menyembunyikan baris, atau sebahagian daripada baris, atau beberapa baris . Anda boleh menggunakan aksara ( # ) pada permulaan baris:

Initializing Ruby Program
This is main Ruby Program
Terminating Ruby Program

Sebagai alternatif, ulasan boleh mengikuti pernyataan atau ungkapan pada baris yang sama:

# 我是注释,请忽略我。

Anda boleh mengulas berbilang baris, sebagai berikut:

name = "Madisetti" # 这也是注释

Ini satu lagi borang. Komen blok ini menyembunyikan baris antara =begin/=end daripada penterjemah:

# 这是注释。
# 这也是注释。
# 这也是注释。
# 这还是注释。