public class ExpandItemList extends ListBase implements java.lang.Iterable<ExpandItem>
A list of item type ExpandItem
.
Uses the property and function naming conventions of the JavaScript Array object.
Modifier and Type | Field and Description |
---|---|
static ExpandItemList |
empty |
Constructor and Description |
---|
ExpandItemList()
See ExpandItemList(int).
|
ExpandItemList(int capacity)
Construct a new list with
ExpandItemList.length of zero and optional initial capacity . |
Modifier and Type | Method and Description |
---|---|
void |
add(ExpandItem item)
Add
item to the end of this list. |
void |
addAll(ExpandItemList list)
Add all the items of
list to the end of this list. |
ExpandItemList |
addThis(ExpandItem item)
Add
item to the end of this list. |
ExpandItemList |
copy()
Return a shallow copy of this list.
|
ExpandItem |
first()
Return the first item in this list.
|
ExpandItem |
forProperty(Property property)
Return (nullable) The first item (if any) for
property , otherwise null . |
static ExpandItemList |
from(java.util.List<ExpandItem> list) |
ExpandItem |
get(int index)
Return the item in this list at the specified
index . |
boolean |
hasProperty(Property property)
Return
true if this list has an item for property . |
boolean |
includes(ExpandItem item)
Return
true if this list contains item . |
int |
indexOf(ExpandItem item)
|
int |
indexOf(ExpandItem item,
int start)
Return first index in this list of
item , or -1 if not found. |
void |
insertAll(int index,
ExpandItemList list)
Insert all items of
list into this list, before the item (if any) at index . |
void |
insertAt(int index,
ExpandItem item)
Insert
item into this list, before the item (if any) at index . |
java.util.Iterator<ExpandItem> |
iterator() |
ExpandItem |
last()
Return the last item in this list.
|
int |
lastIndexOf(ExpandItem item)
|
int |
lastIndexOf(ExpandItem item,
int start)
Return last index in this list of
item , or -1 if not found. |
void |
set(int index,
ExpandItem item)
Set the item in this list at the specified
index . |
static ExpandItemList |
share(ListBase list)
|
ExpandItem |
single()
Return a single item from this list.
|
ExpandItemList |
slice(int start)
See slice(int, int).
|
ExpandItemList |
slice(int start,
int end)
Return a slice of this list from index
start (inclusive) to index end (exclusive). |
java.util.List<ExpandItem> |
toGeneric() |
clear, getComparer, getDataType, getEquality, getUntypedList, isEmpty, length, removeAt, removeFirst, removeLast, removeRange, reverse, shareWith, sort, sortWith, toDynamic, toString, validate
cloneMutable, equals, getTypeCode, hashCode
public static final ExpandItemList empty
public ExpandItemList()
public ExpandItemList(int capacity)
Construct a new list with ExpandItemList.length
of zero and optional initial capacity
.
A list can expand in length beyond its initial capacity, but best performance
will be obtained if the initial capacity is close to the list's maximum length.
capacity
- Optional initial capacity.public void add(ExpandItem item)
Add item
to the end of this list.
item
- Item to be added.public void addAll(ExpandItemList list)
Add all the items of list
to the end of this list.
list
- Items to be added.public ExpandItemList addThis(ExpandItem item)
Add item
to the end of this list.
item
- Item to be added.public ExpandItemList copy()
Return a shallow copy of this list.
public ExpandItem first()
Return the first item in this list.
EmptyListException
if the list is empty.
public ExpandItem forProperty(Property property)
Return (nullable) The first item (if any) for property
, otherwise null
.
property
- Property to be search for in items.property
, otherwise null
.public static ExpandItemList from(java.util.List<ExpandItem> list)
public ExpandItem get(int index)
Return the item in this list at the specified index
.
ListIndexException
if index
is out of range (0 to ExpandItemList.length
- 1).
index
- Zero-based index.public boolean hasProperty(Property property)
Return true
if this list has an item for property
.
property
- Property to be search for in items.true
if this list has an item for property
.public boolean includes(ExpandItem item)
Return true
if this list contains item
.
item
- Item for comparison. Comparison uses the ExpandItemList.equality
property, which would usually be expected to match the ==
operator for item type ExpandItem
.true
if this list contains item
.public int indexOf(ExpandItem item)
item
- Item parameter.public int indexOf(ExpandItem item, int start)
Return first index in this list of item
, or -1
if not found.
item
- Item for comparison. Comparison uses the ExpandItemList.equality
property, which would usually be expected to match the ==
operator for item type ExpandItem
.start
- Zero-based starting index (search moves forwards from this index).item
, or -1
if not found.public void insertAll(int index, ExpandItemList list)
Insert all items of list
into this list, before the item (if any) at index
.
ListIndexException
if index
is out of range (0 to ExpandItemList.length
).
index
- Zero-based index.list
- List of items to be inserted.public void insertAt(int index, ExpandItem item)
Insert item
into this list, before the item (if any) at index
.
ListIndexException
if index
is out of range (0 to ExpandItemList.length
).
index
- Zero-based index.item
- Item to be added.public java.util.Iterator<ExpandItem> iterator()
iterator
in interface java.lang.Iterable<ExpandItem>
public ExpandItem last()
Return the last item in this list.
EmptyListException
if the list is empty.
public int lastIndexOf(ExpandItem item)
item
- Item parameter.public int lastIndexOf(ExpandItem item, int start)
Return last index in this list of item
, or -1
if not found.
item
- Item for comparison. Comparison uses the ExpandItemList.equality
property, which would usually be expected to match the ==
operator for item type ExpandItem
.start
- Zero-based starting index (search moves backwards from this index).item
, or -1
if not found.public void set(int index, ExpandItem item)
Set the item in this list at the specified index
.
index
- Zero-based index.item
- Item value.public static ExpandItemList share(ListBase list)
Return a new ExpandItemList
that shares the ListBase.untypedList
as the list
parameter.
To ensure type safety, items in list
that do not have the item type ExpandItem
will be removed.
list
- List whose items will be shared by the resulting list.ExpandItem
, sharing the same items as list
.public ExpandItem single()
Return a single item from this list.
EmptyListException
if the list has no items, NotUniqueException
if the list has multiple items.
public ExpandItemList slice(int start)
start
- Start parameter.public ExpandItemList slice(int start, int end)
Return a slice of this list from index start
(inclusive) to index end
(exclusive).
start
- Zero-based starting index (inclusive), or negative for starting index relative to the end of this list.end
- Zero-based ending index (exclusive), or negative for ending index relative to the end of this list.start
(inclusive) to index end
(exclusive).public java.util.List<ExpandItem> toGeneric()