首页 > Linux操作系统 > Linux操作系统 > JavaFX教程-修改数组
除了赋值操作(=)之外,JavaFX还提供数据修改操作符(insert和delete),它类似XQuery-Update规范中的语法和语义:
可以用下面方式中的任意一种进行声明:
insert Expression1 [as first | as last] into Expression2 insert Expression1 before Expression2 insert Expression1 after Expression2
insert语句将表达式1求值后的返回结果插入到下面表达式中所描述的位置:
表达式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]
表达式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];
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 []
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/13270562/viewspace-209689/ ,如需转载,请注明出处,否则将追究法律责任。