posts - 48,comments - 156,trackbacks - 0

              在 JavaFX 其實并沒有傳統(tǒng)意義上的數(shù)組,正確的叫法應(yīng)該是序列,即 Sequence ,它類似傳統(tǒng)語言庫里面的 ArrayList,沒有長度限制,可以隨時添加元素或者刪除元素,同時還提供一些附加的操作。

              1、定義一個數(shù)組

              將元素放到方括號中,用逗號分隔開就可以定義了。

              var weekDays = ["Mon","Tue","Wed","Thur","Fri"];

              2、數(shù)組自動扁平化

              var days = [weekDays, ["Sat","Sun"]];

              這里的 days 被自動展開為 ["Mon","Tue","Wed","Thur","Fri","Sat","Sun"]

              3、創(chuàng)建等差數(shù)組

              var nums = [1..100];
              var nums2 = [1..100 step 2];

              step 2 是什么意思應(yīng)該難不到你吧?呵呵。注意:這里說的等差是元素的值等差,而元素的編號是還從 0 開始順序遞增的。

             4、數(shù)組的數(shù)組

              var weekDays = ["Mon","Tue","Wed","Thur","Fri"];
              var days = [weekDays, weekDays];
              System.out.println(days[1]);

              結(jié)果:可能和你想的不一樣,不是 weekDays ,而是 Tue


              5、引用數(shù)組中的一個元素

              var nums = [1..5];
              System.out.println(nums[3]);

              輸出結(jié)果應(yīng)該是:4

              6、向數(shù)組中插入一個元素

                  第一種情況:默認,插入到最后

                  var nums = [1..5];
                  insert 0 into nums;
                  System.out.println(nums);

                  結(jié)果:[ 1, 2, 3, 4, 5, 0 ]

                  0被插到最后位置上
              
                  第二種情況:插入到指定項之前

                  var nums = [1..5];
                  insert  before nums[3];
                  System.out.println(nums);

                  把 into 改成 before ,并指定參照位置就可以了

                  結(jié)果:[ 1, 2, 3, 0, 4, 5 ]


                  第三種情況:插入到指定項之后

                  var nums = [1..5];
                  insert  after nums[3];
                  System.out.println(nums);

                  把 before 改成 after 就可以了

                  結(jié)果:[ 1, 2, 3, 4, 0, 5 ]

              
              7、刪除數(shù)組中的元素


                  第一種情況:刪除指定位置元素

                  var nums = [1..5];
                  delete nums[3];
                  System.out.println(nums);

                  結(jié)果:[ 1, 2, 3, 5 ]


                  第二種情況:刪除指定值的元素

                  var nums = [1,2,3,3,4,5];
                  delete  from nums;
                  System.out.println(nums);

                  結(jié)果:[ 1, 2, 4, 5 ]

                  兩個 3 都被刪除掉了


                  第三種情況:刪除指點范圍內(nèi)的所有元素

                  var nums = [1..5];
                  delete  nums[1..3];
                  System.out.println(nums);

                  結(jié)果:[ 1, 5 ]

                  注意:第一行里面的 1 代表 第 0 個元素值為 1 ;第二行里面的 1 代表第 1 個元素,他的值應(yīng)該是 2

                  第四種情況:刪除全部元素

                  var nums = [1..5];
                  delete  nums;
                  System.out.println(nums);

                  結(jié)果:[ ]


              8、數(shù)組倒置

              var nums = [1..5];
              System.out.println(reverse nums);

              結(jié)果:[ 5, 4, 3, 2, 1 ]


              9、返回數(shù)組的子集
           


             返回a 、b之間(含 a 和 b)的所有元素

              def days = ["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];
              def weekend = days[5..6]; 
           
              結(jié)果:[ Sat, Sun ]

              返回a 、b之間(含 a,不含 b)的所有元素

              def days = ["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];
              def weekdays = days[0..<5]; 
           

              結(jié)果:[ Mon, Tue, Wed, Thu, Fri ]


              返回從 a 到序列末尾處的所有項

              def days = ["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];
              def weekend = days[5..]; 
           

              結(jié)果:[ Sat, Sun ]

              返回 a 到序列末尾處的所有項(但不含最后一項)

              def days = ["Mon","Tue","Wed","Thu","Fri","Sat","Sun"];
              def days2 = days[0..<];
           

              結(jié)果:[ Mon, Tue, Wed, Thu, Fri, Sat ]



              10、用條件表達式選擇子集

              def nums = [1..9];
              def numsGreaterThanTwo = nums[n | n > 2 and n!=6];

              結(jié)果:[ 3, 4, 5, 7, 8, 9 ]









          posted on 2009-03-09 23:17 左洸 閱讀(1405) 評論(0)  編輯  收藏 所屬分類: JavaFX 深入淺出
          主站蜘蛛池模板: 古蔺县| 海淀区| 新密市| 临洮县| 德江县| 本溪市| 嘉鱼县| 新密市| 怀安县| 正定县| 哈巴河县| 盐池县| 华亭县| 内乡县| 三江| 郎溪县| 民乐县| 阳江市| 介休市| 綦江县| 老河口市| 离岛区| 长泰县| 稻城县| 阳泉市| 射阳县| 电白县| 化州市| 景洪市| 英吉沙县| 乾安县| 金溪县| 都昌县| 松滋市| 桐柏县| 宿迁市| 土默特左旗| 衡南县| 通辽市| 镇巴县| 丹寨县|