[OCAJP]do-while迴圈

Given:

What is the result?

A.

Hello Java! 8
Hello Java! 6
Hello Java! 4

B.

Hello Java! 8
Hello Java! 6

C.

Hello Java! 8

D. Compilation fails

題解

這題程式的邏輯還蠻混亂的,真正在寫程式的時候不會寫出這種爛code。首先這邊要知道,類別變數bVar在沒有指定其初始值的狀況下,預設會是false,所以根據第14行的while條件,可以知道當bVar1為false的時候,條件式就不成立了,迴圈也不會繼續執行。

再來看count這個變數,count在do-while迴圈內並沒有做任何的更動,因此第14行的while條件中的count大於4是永遠成立的。

第11行的if在迴圈第一次執行的時候就會成立,因此會將bVar1設成false,迴圈只執行一次就結束了。最後「Hello Java! 8」只輸出了一次。

關於作者

Magic Len

各位好,我是Magic Len,是這網站的管理員。我是台灣台中大肚山上人,畢業於台中高工資訊科和台灣科技大學資訊工程系,曾在桃機航警局服役。我熱愛自然也熱愛科學,喜歡和別人分享自己的知識與經驗。如果你有興趣認識我,可以加我的Facebook,並且請註明是從MagicLen來的。

相關文章