BOO大全/控制結構

(重定向自BOO/TypeCast

上一章:參考與物件 目錄 下一章:型別轉換


控制結構

编辑

基本的控制述句與 Python 非常類似。

a = 10
if a > 5:
    print "a was ",a
elif a > 8:
	print "a was too large!"
else:
	print "no go!"
	print "a is too small"

程式不管在 Python 或 Boo 都通用。while 迴圈也是:

i = 0
while i < 10:
	if i > 5:
		print i
	if i <= 5:
		print '-'
	i = i + 1

上面的程式當然有更好的寫法。 Boo 述句可以有修飾詞,這讓程式看起來很像 Perl。

for i in range(0,10):
	print i if i > 5
	print '-' unless i > 5

上面提到了 unless 述句,它讀起來就像是 if not

a = 1
unless a == 2:
	print 'yay'

for 述句通常用來遍訪集合裡的所有元素:

import System.Console
s = "hello dolly"
for ch in s:
	Write(ch) if not char.IsWhiteSpace(ch)
WriteLine()

如果你不想讓 Boo 與 Python 一樣強制地要求縮排的話,你可以打開wsa選項

wsa選項

编辑

-wsa 選項打開以後,Boo 就會改用 end 來認定程式區塊是否結束,語言行為會變得類似 Ruby 或 Lua。

# @compile{booc -wsa wsa.boo}
i = 0
while i < 10:
	if i > 5:
		print i
	end
	if i <= 5:
		print '-'
	else:
		print '*'
	end
	i = i + 1
end

譯註:booi 也可以使用 -wsa 選項,但 booish 不行!


上一章:參考與物件 目錄 下一章:型別轉換