溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java順序接口怎么實(shí)現(xiàn)

發(fā)布時(shí)間:2022-01-05 17:50:30 來源:億速云 閱讀:270 作者:iii 欄目:編程語言

本篇內(nèi)容介紹了“Java順序接口怎么實(shí)現(xiàn)”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

順序是一個(gè)設(shè)置(settings)的有序集合。順序的每一個(gè)入口都有一個(gè)索引。

順序的關(guān)鍵點(diǎn)是設(shè)置的順序可以被保存,跨越多個(gè)不同屬性之間的設(shè)置也可以被保存。因此,如果屬性A被更新了,接著屬性B被更新,最后屬性A又被更新,則一個(gè)順序可以反映這個(gè)過程。

每一個(gè)設(shè)置都是一個(gè)屬性和值對。對于SDO文本屬性,具有一個(gè)使用文本的快捷方式。

非結(jié)構(gòu)化的文本

使用SDO文本屬性,非結(jié)構(gòu)化的文本可以被添加入順序。add(String text)方法使用SDO文本屬性添加一個(gè)新的入口到順序的末尾。add(int index, String text)方法使用SDO文本屬性將一個(gè)新的入口添加到順序中指定索引的位置。

使用順序

順序經(jīng)常用在處理半結(jié)構(gòu)化業(yè)務(wù)數(shù)據(jù)時(shí),例如混有文本的XML元素。假定一個(gè)順序有兩個(gè)多值屬性,分別為numbers(整型屬性)和letters(字符串型屬性)。同時(shí),假定順序被如下初始化:

  1. 1被加入到numbers屬性。

  2. 字符串annotation text被添加到順序中。

  3. A被添加到letters屬性。

  4. 2被加入到numbers屬性。

  5. B被添加到letters屬性。

則初始化結(jié)束后,順序包含如下設(shè)置:

{,,,,}

numbers屬性被設(shè)置為{1, 2},letters屬性將被設(shè)置為{“A”, ”B”},,但是如果只是使用訪問器(accessors)而不使用順序的話,則將無法獲得跨越numbers屬性和letters屬性的設(shè)置順序。

順序和數(shù)據(jù)對象的比較

數(shù)據(jù)對象跟蹤屬性和值的順序的方式與順序(Sequence)使用的跟蹤方式很不同。

數(shù)據(jù)對象是不保存添加到其之中的不同屬性之間的順序的。在一個(gè)多值屬性的情況下,添加到該屬性的不同值之間的順序是可以保存的,但是當(dāng)值被加入到兩個(gè)不同的屬性時(shí),就沒有辦法知道哪一個(gè)屬性被先設(shè)置了。在一個(gè)順序內(nèi),對于多個(gè)屬性的設(shè)置順序是可以被保存的。

順序(Sequence)內(nèi)出現(xiàn)的相同屬性同樣可以通過數(shù)據(jù)對象獲得,但是數(shù)據(jù)對象沒有保存多個(gè)屬性設(shè)置的順序(order)。

注意如果數(shù)據(jù)對象的類型是一個(gè)順序類型(即getType().isSequenced()返回值為true),那么該數(shù)據(jù)對象將有一個(gè)順序(Sequence)。

順序的方法:

  • size()方法返回順序上的入口的數(shù)目。

  • getProperty(int index) 訪問器返回指定索引位置的屬性。

  • getValue(int index)訪問器返回指定索引位置的值。

  • setValue(int index, Object value) 訪問器更新指定索引位置的值并且維護(hù)順序的位置。

  • 布爾型add()訪問器添加到順序的末尾。

  • add(int index, String text) 訪問器在指定的索引位置添加非結(jié)構(gòu)化的文本。

  • add(String text)訪問器將非結(jié)構(gòu)化文本添加到順序的末尾。

  • 其它add(int index)訪問器將一個(gè)特定的位置添加到順序中,如同java.util.List,將其后位置的接口依次加一。

  • remove()方法移走指定索引位置的入口并且將其之后位置的索引依次減一。

  • move()方法移走從fromIndextoIndex之間的入口。

為了在順序的末尾創(chuàng)建數(shù)據(jù)對象,可以使用數(shù)據(jù)對象的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順序接口怎么實(shí)現(xiàn)”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI