本篇内容介绍了“Java顺序接口怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
顺序是一个设置(settings)的有序集合。顺序的每一个入口都有一个索引。
顺序的关键点是设置的顺序可以被保存,跨越多个不同属性之间的设置也可以被保存。因此,如果属性A被更新了,接着属性B被更新,最后属性A又被更新,则一个顺序可以反映这个过程。
每一个设置都是一个属性和值对。对于SDO文本属性,具有一个使用文本的快捷方式。
使用SDO文本属性,非结构化的文本可以被添加入顺序。add(String text)方法使用SDO文本属性添加一个新的入口到顺序的末尾。add(int index, String text)方法使用SDO文本属性将一个新的入口添加到顺序中指定索引的位置。
顺序经常用在处理半结构化业务数据时,例如混有文本的XML元素。假定一个顺序有两个多值属性,分别为numbers(整型属性)和letters(字符串型属性)。同时,假定顺序被如下初始化:
值1被加入到numbers属性。
字符串annotation text被添加到顺序中。
值A被添加到letters属性。
值2被加入到numbers属性。
值B被添加到letters属性。
则初始化结束后,顺序包含如下设置:
{
numbers属性被设置为{1, 2},letters属性将被设置为{“A”, ”B”},,但是如果只是使用访问器(accessors)而不使用顺序的话,则将无法获得跨越numbers属性和letters属性的设置顺序。
数据对象跟踪属性和值的顺序的方式与顺序(Sequence)使用的跟踪方式很不同。
数据对象是不保存添加到其之中的不同属性之间的顺序的。在一个多值属性的情况下,添加到该属性的不同值之间的顺序是可以保存的,但是当值被加入到两个不同的属性时,就没有办法知道哪一个属性被先设置了。在一个顺序内,对于多个属性的设置顺序是可以被保存的。
顺序(Sequence)内出现的相同属性同样可以通过数据对象获得,但是数据对象没有保存多个属性设置的顺序(order)。
注意如果数据对象的类型是一个顺序类型(即getType().isSequenced()返回值为true),那么该数据对象将有一个顺序(Sequence)。
顺序的方法:
size()方法返回顺序上的入口的数目。
getProperty(int index) 访问器返回指定索引位置的属性。
getValue(int index)访问器返回指定索引位置的值。
setValue(int index, Object value) 访问器更新指定索引位置的值并且维护顺序的位置。
布尔型add()访问器添加到顺序的末尾。
add(int index, String text) 访问器在指定的索引位置添加非结构化的文本。
add(String text)访问器将非结构化文本添加到顺序的末尾。
其它add(int index)访问器将一个特定的位置添加到顺序中,如同java.util.List,将其后位置的接口依次加一。
remove()方法移走指定索引位置的入口并且将其之后位置的索引依次减一。
move()方法移走从fromIndex到toIndex之间的入口。
为了在顺序的末尾创建数据对象,可以使用数据对象的create()方法。
public interface Sequence
{
int size();
Property getProperty(int index);
Object getValue(int index);
Object setValue(int index, Object value);
boolean add(String propertyName, Object value);
boolean add(int propertyIndex, Object value);
boolean add(Property property, Object value);
void add(int index, String propertyName, Object value);
void add(int index, int propertyIndex, Object value);
void add(int index, Property property, Object value);
void add(int index, String text);
void add(String text);
void remove(int index);
void move(int toIndex, int fromIndex);
}
“Java顺序接口怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。