JavaFX教程-函式、陣列、表示式和操作
JavaFX函式代表了JavaFX程式語言的純函式子集。函式體可以僅包含一組變數宣告和一個返回語句。JavaFX也提供了過程(procedures)(被呼叫的操作,詳見下面關於操作的章節),裡面可以包括任意數量的宣告、條件語句、迴圈條件、try/catch等等。語句在函式中的給定順序並不很重要。下面是一個簡單的函式程式的例如:
function z(a,b) { var x = a + b; var y = a - b; return sq(x) / sq (y); } function sq(n) {return n * n;} function main() { return z(5, 10); }
儘管JavaFX語言是靜態型別的,但這裡並沒有強制的型別宣告(後面會詳細敘述)。
最常用的資料結構是陣列,它在JavaFX中通過方括弧和逗號來宣告:var week_days = ["Mon","Tue","Wed","Thur","Fri"]; var days = [week_days, ["Sat","Sun"]];
陣列代表了一組順序的物件。JavaFX中的陣列本身不是物件,而且不能巢狀。建立巢狀陣列的表示式(例如上面“days”的初始化方式)會被自動扁平化,例如:
days == ["Mon","Tue","Wed","Thur","Fri","Sat","Sun"]; // returns true
陣列的大小可以通過JavaFX的sizeof操作符確定:
var n = sizeof days; // n = 7對於陣列成員形成數列(arithmetic series)的陣列,JavaFX提供了一種簡寫符號:“..”。下面提供了定義階乘函式和奇數求和函式的示例,其中“result”的數值是1至100中奇數的和:
function fac(n) {return product([1..n]);} var result = sum([1,3..100]);
陣列中的所有元素必須是同一種型別。
陣列可以像在Java中那樣通過索引訪問:
var wednesday = days[2];JavaFX中的[]操作符還可用來表示選擇(類似XPath的用法)。在這種情況下,[]中包含的表示式應是一個布林表示式。此表示式可以返回一個新的陣列,此陣列中只包含滿足[]中斷言(predicate)的成員。
就像在XPath一樣,可以在[]操作符包含的斷言中通過.操作符訪問上下文物件。例如:
var nums = [1,2,3,4]; var numsGreaterThanTwo = nums[. > 2]; // yields [3, 4]
另一種方法,也可以將變數宣告為上下文物件。例如,這種方式與上面的方式等價:
numsGreaterThanTwo = nums[n|n > 2];
JavaFX中的indexof操作符返回物件在陣列中的順序位置(類似XPath中的position()函式)。
下面list的car和cdr可以用選擇表示式來表示:
function car(list) {return list[indexof . == 0];} function cdr(list) {return list[indexof . > 0];}
當然,car可以用更簡單、高效的方式表示:
function car(list) {return list[0];}
例如:
var list = [1..10]; car(list); // yields 1 cdr(list); // yields [2,3,4,5,6,7,8,9,10]
JavaFX中的空陣列[]與null等價,例如:
[] == null // yields true sizeof null // yields 0
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13270562/viewspace-209688/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PHP:常用PHP陣列操作函式PHP陣列函式
- 陣列排序函式-php陣列函式(一)陣列排序函式PHP
- kotlin 函式和 Lambda 表示式Kotlin函式
- JavaScript函式宣告和函式表示式區別JavaScript函式
- 陣列處理函式陣列函式
- PHP 陣列常用函式PHP陣列函式
- 陣列展平函式陣列函式
- PHP 陣列函式妙用PHP陣列函式
- 巧用 PHP 陣列函式PHP陣列函式
- 陣列操作,計算組元素的極值函式陣列函式
- 5.函式和lambda表示式函式
- PostgreSQL:陣列——型別、運算子和函式SQL陣列型別函式
- 7.PHP陣列和字串常用函式PHP陣列字串函式
- 常用JS函式-陣列扁平化,快取函式,柯里化函式,防抖和節流函式JS函式陣列快取
- 陣列常用函式彙總陣列函式
- shell--函式與陣列函式陣列
- PHP陣列函式彙總PHP陣列函式
- php陣列函式小結PHP陣列函式
- 陣列二:使用陣列可變函式為陣列排序陣列函式排序
- 【Python】python map()函式和lambda表示式Python函式
- JavaScript學習筆記(二)——函式和陣列JavaScript筆記函式陣列
- PHP陣列函式-array_mapPHP陣列函式
- JS 中的函式表示式和函式宣告你混淆了嗎?JS函式
- Python函式與lambda 表示式(匿名函式)Python函式
- PHP preg match正規表示式函式的操作例項PHP函式
- javascript-函式表示式JavaScript函式
- 函式表示式–遞迴函式遞迴
- Oracle OCP(06):通用函式和條件表示式Oracle函式
- 何時使用函式表示式與函式宣告函式
- JS函式表示式——函式遞迴、閉包JS函式遞迴
- JS-陣列、函式、類與物件JS陣列函式物件
- TS定義陣列 ts宣告函式陣列函式
- 陣列對換,print函式傳參陣列函式
- 陣列,函式與指標 詳解陣列函式指標
- Python全棧Web(JavaScript函式、陣列)Python全棧WebJavaScript函式陣列
- matlab表示函式Matlab函式
- 【碼上開學】Kotlin 的高階函式、匿名函式和 Lambda 表示式Kotlin函式
- 你不知道的JavaScript--Item7 函式和(命名)函式表示式JavaScript函式
- Julia 語言中的生成器表示式與陣列推導式陣列