Ruby的輸出方法

2021-08-16 17:59:25 字數 2026 閱讀 4529

print("hello world.\n")
下劃線部分被稱為string物件或者字串物件,也可以直接稱這部分為字串。

資料在程式中表現為物件。

在ruby中,字串、數值、時間等各種資料都是物件。

注:\n是換行符,與大多數語言一樣。

print是乙個方法。所謂方法就是物件的行為。

print方法的作用就是輸出()裡的內容。執行方法時必須的條件稱為引數。括號裡面的內容就是print方法的引數。

\是轉義字元。

建立字串物件除了可以使用""(雙引號)外,還可以使用''(單引號)。

例如:

print('hello ruby\n')
執行結果:

hello ruby\n
就是說在單引號裡,像\n這樣的特殊字元不會經過轉義,而是原封不動的直接輸出。

但是也有例外,若想在字串裡嵌入\與單引號時,還是需要在之前加上\轉義。否則會報錯。

ruby在呼叫方法時可以省略()。如:

print "hello world!"

若想連續輸出多個字串,用逗號(,)分隔各字串,程式會按順序輸出字串。如:

print "hello","ruby",'!'    #單雙引號可以混用
執行結果:

helloworld!

puts方法

puts方法與print方法的區別:

puts方法在輸出結果的末尾一定會輸出換行符。注:當引數為兩個及以上時各個字串末尾都會加上換行符。如:

puts "hello","ruby","!"
執行結果:

hello

ruby

!

p方法與其他輸出方法的區別:使用p方法時,數值結果和字串結果會以不同的形式輸出。如:

puts "100"    #輸入字串100

puts 100     #輸入數值100

p "100"   

p 100

執行結果:

100

100"100"

100

解釋:可以看到puts方法和print方法無論是輸入數值100,還是輸出字串100,最後的結果都是100。而p方法則會準確的告知

結果。另外,使用p方法時,換行符(\n)、製表符(\t)等特殊字元不會轉義,而會直接輸出。

使用原則:若只是需要輸出程式執行結果、資訊等,可以選擇print方法;若想要確認程式的執**況,則可以選擇p方法。

原則上p方法是提供給程式設計者使用的。

關於中文輸出

在某些ruby環境中可能存在編碼方式錯誤,導致中文輸出亂碼。

ruby程式的編碼方式,是通過在程式的首行**新增注釋"#encoding:編碼方式"來指定的。(編碼的規則稱為encoding)。這個注釋稱為魔法注釋(magic comment)。

windows常用編碼gbk編寫**時,可像下面這樣寫。

#encoding:gbk

print "你好,世界"

平台編碼方式

windows

gbk (或者gb 2312)

mac os x

utf-8

unix

utf-8

若沒有指定注釋,ruby會預設使用utf-8編碼方式。

另外使用上述p方法輸出中文時,有時候也會出現亂碼的情況。這時可以使用"-e 編碼方式"這個選項來指定輸出結果的編碼方式。

ruby -e utf-8 指令碼檔名        #指令碼執行
irb -e utf-8                   #irb啟動

Oracle PL SQL 過程除錯的輸出方法

1.最基本的dbms output.put line 方法。隨便在什麼地方,只要是begin和end之間,就可以使用dbms output.put line output 然而這會有乙個問題,就是使用該函式一次最多隻可以顯示255個字元,否則緩衝區會溢位。此外,函式dbms output.enabl...

Oracle PL SQL過程除錯的輸出方法

1.最基本的dbms output.put line 方法。隨便在什麼地方,只要是begin和end之間,就可以使用dbms output.put line output 然而這會有乙個問題,就是使用該函式一次最多隻可以顯示255個字元,否則緩衝區會溢位。此外,函式dbms output.enabl...

組織結構的遞迴輸出方法

一道php筆試題的解法,遞迴地輸出組織架構下的每乙個人的所有下屬,大家可以先根據題目自己動手試一下 team 張三 劉備 張飛 null 關羽 馬良 null 孟達 null 李四 王五 曹操 荀攸 null 賈詡 null 郭嘉 null 程昱 null,張郃 null,要求 根據組織結構輸出每個...