一、JavaFX 有幾種基本數據類型,分別是:
Integer 整數類型
Number 浮點數類型
Boolean 邏輯類型
Duration 時間類型
String 字元串類型
這幾種類型與傳統的編程語言對應的類型一樣,分別支持加減乘除、自加自減、比較大小、邏輯判斷等等這些操作,其實想想哪門語言也就是這些東西.
二、默認值:一個基本數據類型的變數被聲明了以後,如果沒有賦初值,系統會自動初始化為默認值,見下表:
類型 | 聲明 | 默認值 | 元素說明符 |
String | : String | "" | java.lang.String |
Integer | : Integer | 0 | java.lang.Integer |
Number | : Number | 0.0 | java.lang.Double |
Boolean | : Boolean | false | java.lang.Boolean |
Duration | : Duration | 0ms | javafx.lang.Duration |
注意這裡說的是基本數據類型,如果是對象類型,默認值就是 null 了.
三、Duration
Duration 類型表示一段時間,我們來看一下Duration的例子:
5ms; //5 毫秒 10s; //10 秒 30m; //30 分 1h; //1 小時 |
用字面量來描述,很明了吧.
四、字元串類型
與傳統語法不一樣的地方是,JavaFX的字元串變數既可以用單引號,也可以用雙引號;另外連接字元串不用加號,而使用花括弧,看下例子就明白了:
import java.lang.System; var name = 'Bei Jing'; var message = 'Hello, {name}.'; System.out.println(message); |
結果是:Hello,Bei Jing.
五、字元串的國際化
看下面的代碼:
def mon = ##"Monday"; def about = ##[ABOUT]"JavaFX is a cool scripting language!"; println( mon ); println( about ); |
假如這段代碼保存在 Foo.fx 文件中,然後在同一路徑下創建一個屬性文件,文件名必須像這樣:Foo_zh_CN.fxproperties ,內容如下:
@charset "UTF-8"; "Monday" = "星期一" "ABOUT" = "JavaFX 是一種很酷的腳本語言!" |
這樣,上面的代碼輸出就成了中文了.為什麼會這樣呢?就和你想的一樣,關鍵就在於雙井號 ## 和 符合命名規則的屬性文件.
1、如果沒有屬性文件,系統會當 ## 不存在,不作任何處理,按原樣輸出.
2、如果有屬性文件,系統會根據當前操作系統的語言來決定是否使用,以及使用哪一個,都是根據文件名來判斷的.如果找不到,也不作任何處理,只按原樣輸出.比如:上面這個例子,只在中文操作系統下起作用,你放到法文操作系統中,他只會輸出英文.如果我們再添加一個屬性文件:Foo_fr_FR.fxproperties ,內容如下:
@charset "UTF-8"; "Monday" = "Lundi" "ABOUT" = "JavaFX est un langage de script cool !" |
這樣,這段程序不但在中文、在法文操作系統中,等能正確的顯示本地語言了.
[火星人 ] JavaFX 深入淺出(二)基本數據類型已經有637次圍觀