JavaFX教程-修改数组

上一篇 / 下一篇  2008-03-18 16:48:36 / 个人分类:Javafx

除了赋值操作(=)之外,JavaFX还提供数据修改操作符(insertdelete),它类似XQuery-Update规范中的语法和语义:

insert语句

可以用下面方式中的任意一种进行声明:

insert Expression1 [as first | as last] into Expression2
	insert Expression1 before Expression2
	insert Expression1 after Expression2

insert语句将表达式1求值后的返回结果插入到下面表达式中所描述的位置:

into

表达式2必须指向一个属性或者变量。如果表达式2指向一个单值属性,那么插入的效果等同于赋值操作。

如果指定了as first,那么插入位置就在表达式2所表示的列表的第一个元素的前面。如果指定了as last,那么插入位置就在表达式2所表示的列表的最后一个元素的后面。如果没有明确地指定as first或者as last,则默认为as last

例如:

var x = [1,2,3];
	insert 12 into x; // yields [1,2,3,12]
	insert 10 as first into x; // yields [10,1,2,3,12]
	insert [99,100] as last into x; // yields [10,1,2,3,12,99,100]

before, after

表达式2必须是在属性或者变量之上的选择表达式。如果指定了before,那么插入位置就是在被选择的元素之前。如果指定了after,插入位置则在被选择的元素之后。

例如:

var x = [1,2,3];
	insert 10 after x[. == 10]; // yields [1,2,3,10]
	insert 12 before x[1]; // yields [1,12,2,3,10]
	insert 13 after x[. == 2]; // yields [1, 12, 2, 13, 3, 10];

top

delete语句

delete语句可以使用下面形式中的一种:

delete variable
	delete Expression.attribute
	delete variable[predicate]
	delete Expression.attribute[predicate]

前两种形式将删除变量或者属性中的所有元素,它们等价于将变量或者属性赋值为[]或者null。后两种形式仅删除满足断言的元素。

例如:

var x = [1,2,3];
	insert 10 into x; // yields [1,2,3,10]
	insert 12 before x[1]; // yields [1,12,2,3,10]
	delete x[. == 12]; // yields [1,2,3,10]
	delete x[. >= 3]; // yields [1,2]
	insert 5 after x[. == 1]; // yields [1,5,2];
	insert 13 as first into x; // yields [13, 1, 5, 2];
	delete x; // yields []

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2012-02-10  
   1234
567891011
12131415161718
19202122232425
26272829   

数据统计

  • 访问量: 93437
  • 日志数: 171
  • 影音数: 3
  • 建立时间: 2008-02-28
  • 更新时间: 2008-05-19

RSS订阅

Open Toolbar