javax.swing

Class DefaultListModel

Implemented Interfaces:
ListModel, Serializable

public class DefaultListModel
extends AbstractListModel

The default implementation of AbstractListModel, used by JList and similar objects as the model of a list of values. The implementation is based on an underlying Vector.
See Also:
Serialized Form

Field Summary

Fields inherited from class javax.swing.AbstractListModel

listenerList

Method Summary

void
add(int index, Object element)
Inserts an element at a particular index in the list.
void
addElement(Object element)
Inserts an element at the end of the list.
int
capacity()
Gets the capacity of the list.
void
clear()
Erases all the elements of the list, setting the list's size to 0.
boolean
contains(Object element)
Determines whether a particular element is a member of the list.
void
copyInto(Object[] array)
Copies the list into a provided array.
Object
elementAt(int index)
Gets an element of the list at the provided index.
Enumeration
elements()
Returns an Enumeration over the elements of the list.
void
ensureCapacity(int size)
Ensures that the list's capacity is at least equal to size.
Object
firstElement()
Gets the first element in the list.
Object
get(int index)
Gets the list element at a particular index.
Object
getElementAt(int index)
Gets the list element at a particular index.
int
getSize()
Gets the size of the list.
int
indexOf(Object element)
Gets the first index of a particular element in the list.
int
indexOf(Object element, int startIndex)
Gets the first index of a particular element in a list which occurs at or after a particular index.
void
insertElementAt(Object element, int index)
Inserts an element at a particular index in the list.
boolean
isEmpty()
Determines whether the list is empty.
Object
lastElement()
Gets the last element in the list.
int
lastIndexOf(Object element)
Gets the last index of a particular element in the list.
int
lastIndexOf(Object element, int endIndex)
Gets the last index of a particular element in a list which occurs at or before a particular index.
Object
remove(int index)
Removes the element at a particular index from the list.
void
removeAllElements()
Remove all elements in the list.
boolean
removeElement(Object element)
Removes the first occurrence of a particular element in the list.
void
removeElementAt(int index)
Removes the element at a particular index from the list.
void
removeRange(int startIndex, int endIndex)
Remove all elements between startIndex and endIndex inclusive.
Object
set(int index, Object element)
Sets the list element at a particular index.
void
setElementAt(Object element, int index)
Sets the list element at a particular index.
void
setSize(int size)
Sets the size of the list to a particular value.
int
size()
Gets the number of elements in the list.
Object[]
toArray()
Gets an array containing the elements of the list.
String
toString()
Convert the list to a string representation.
void
trimToSize()
Sets the capacity of the list to be equal to its size.

Methods inherited from class javax.swing.AbstractListModel

addListDataListener, extends EventListener> T[] getListeners, fireContentsChanged, fireIntervalAdded, fireIntervalRemoved, getListDataListeners, removeListDataListener

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Method Details

add

public void add(int index,
                Object element)
Inserts an element at a particular index in the list. Each element at index i >= index is shifted to position i + 1. If index is equal to size(), this is equivalent to appending an element to the array. Any index greater than size() is illegal.
Parameters:
index - The index to insert the element at
element - The element to insert at the index
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds [0, size()]

addElement

public void addElement(Object element)
Inserts an element at the end of the list. This is equivalent to calling list.add(list.size(), element).
Parameters:
element - The element to add to the list

capacity

public int capacity()
Gets the capacity of the list. The list's capacity is the number of elements it can hold before it needs to be reallocated.
Returns:
The capacity of the list

clear

public void clear()
Erases all the elements of the list, setting the list's size to 0.

contains

public boolean contains(Object element)
Determines whether a particular element is a member of the list.
Parameters:
element - The element to search for
Returns:
true if element is a member of the list, otherwise false

copyInto

public void copyInto(Object[] array)
Copies the list into a provided array. The provided array must be at least as large as the list.
Parameters:
array - The array to copy the list into
Throws:
IndexOutOfBoundsException - if the array is too small to hold the elements of the list

elementAt

public Object elementAt(int index)
Gets an element of the list at the provided index.
Parameters:
index - The index of the element to get
Returns:
The object at the given index
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds of the list [0, size())

elements

public Enumeration elements()
Returns an Enumeration over the elements of the list.
Returns:
A new enumeration which iterates over the list

ensureCapacity

public void ensureCapacity(int size)
Ensures that the list's capacity is at least equal to size. The list's capacity is the number of elements it can hold before it needs to be reallocated.
Parameters:
size - The capacity to ensure the list can hold

firstElement

public Object firstElement()
Gets the first element in the list.
Returns:
The first element in the list

get

public Object get(int index)
Gets the list element at a particular index.
Parameters:
index - The index to get the list value at
Returns:
The list value at the provided index
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds of the list [0, size())

getElementAt

public Object getElementAt(int index)
Gets the list element at a particular index.
Specified by:
getElementAt in interface ListModel
Parameters:
index - The index to get the list value at
Returns:
The list value at the provided index
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds of the list [0, size())

getSize

public int getSize()
Gets the size of the list.
Specified by:
getSize in interface ListModel
Returns:
The number of elements currently in the list

indexOf

public int indexOf(Object element)
Gets the first index of a particular element in the list.
Parameters:
element - The element to search for
Returns:
The first index in the list at which an object obj exists such that obj.equals(element) is true; if no such object exists, the method returns -1

indexOf

public int indexOf(Object element,
                   int startIndex)
Gets the first index of a particular element in a list which occurs at or after a particular index.
Parameters:
element - The element to search for
startIndex - The index to begin searching at
Returns:
The first index in the list, greater than or equal to startIndex, at which an object obj exists such that obj.equals(element) is true; if no such object exists, the method returns -1

insertElementAt

public void insertElementAt(Object element,
                            int index)
Inserts an element at a particular index in the list. Each element at index i >= index is shifted to position i + 1. If index is equal to size(), this is equivalent to appending an element to the array. Any index greater than size() is illegal.
Parameters:
element - The element to insert at the index
index - The index to insert the element at
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds [0, size()]

isEmpty

public boolean isEmpty()
Determines whether the list is empty.
Returns:
true if the list is empty, otherwise false

lastElement

public Object lastElement()
Gets the last element in the list.
Returns:
The last element in the list

lastIndexOf

public int lastIndexOf(Object element)
Gets the last index of a particular element in the list.
Parameters:
element - The element to search for
Returns:
The last index in the list at which an object obj exists such that obj.equals(element) is true; if no such object exists, the method returns -1

lastIndexOf

public int lastIndexOf(Object element,
                       int endIndex)
Gets the last index of a particular element in a list which occurs at or before a particular index.
Parameters:
element - The element to search for
endIndex - The index to finish searching at
Returns:
The last index in the list, less than to or equal to endIndexIndex, at which an object obj exists such that obj.equals(element) is true; if no such object exists, the method returns -1

remove

public Object remove(int index)
Removes the element at a particular index from the list.
Parameters:
index - The index of the element to remove
Returns:
The value at the index, which has been removed from the list
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds of the list [0, size())

removeAllElements

public void removeAllElements()
Remove all elements in the list.

removeElement

public boolean removeElement(Object element)
Removes the first occurrence of a particular element in the list. If the element does not exist in the list, nothing happens.
Parameters:
element - The element to remove
Returns:
true if the element existed in the list (and was removed), false otherwise

removeElementAt

public void removeElementAt(int index)
Removes the element at a particular index from the list.
Parameters:
index - The index of the element to remove
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds of the list [0, size())

removeRange

public void removeRange(int startIndex,
                        int endIndex)
Remove all elements between startIndex and endIndex inclusive.
Parameters:
startIndex - The first index in the range to remove
endIndex - The last index in the range to remove
Throws:
ArrayIndexOutOfBoundsException - if either index is outside the valid range of indices for this list [0, size())
IllegalArgumentException - if startIndex > endIndex

set

public Object set(int index,
                  Object element)
Sets the list element at a particular index.
Parameters:
index - The list index at which to set a value
element - The value to set at the specified index
Returns:
The value previously held at the specified index
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds of the list [0, size())

setElementAt

public void setElementAt(Object element,
                         int index)
Sets the list element at a particular index.
Parameters:
element - The value to set at the specified index
index - The list index at which to set a value
Throws:
ArrayIndexOutOfBoundsException - If the provided index is outside the bounds of the list [0, size())

setSize

public void setSize(int size)
Sets the size of the list to a particular value. If the specified size is greater than the current size, the values at the excess list indices are set to null. If the specified size is less than the current size, the excess elements are removed from the list.
Parameters:
size - The new size to set the list to

size

public int size()
Gets the number of elements in the list.
Returns:
The number of elements in the list

toArray

public Object[] toArray()
Gets an array containing the elements of the list.
Returns:
An array of the objects in the list, in the order they occur in the list

toString

public String toString()
Convert the list to a string representation.
Overrides:
toString in interface Object
Returns:
A string representation of the list

trimToSize

public void trimToSize()
Sets the capacity of the list to be equal to its size. The list's capacity is the number of elements it can hold before it needs to be reallocated. The list's size is the number of elements it currently holds.

DefaultListModel.java -- Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.