ruby 怪異的while迴圈處理,和java的差別

lyojbuilder發表於2006-11-05
我在 ruby user's guide 上面看到這樣一段程式碼:
程式碼

   1. a = 123  
   2. klass = a.class  
   3. while klass do  
   4.   print klass  
   5.   klass = klass.superclass  
   6.   puts " <<<< "   
   7. end  

<p class="indent">

開始以為作者些錯了,但是後來一執行,居然是可以的,他的 while調見怎麼能不是一個 boolean表示式呢?我看他的書上沒有什麼特殊的用法啊? 這句話:
程式碼

   1. while klass  
<p class="indent">

根本不是一個boolean 表示式,他的意思應該是直到
程式碼

   1. while nil  
<p class="indent">

的時候就停止迴圈,這樣使用也可以麼?

相關文章