Package org.eclipse.jetty.util
Class ArrayUtil
java.lang.Object
org.eclipse.jetty.util.ArrayUtil
Utility methods for Array manipulation
-
Method Summary
Modifier and TypeMethodDescriptionstatic <T> T[]add(T[] array1, T[] array2) Add arraysstatic <T> T[]addToArray(T[] array, T item, Class<?> type) Add element to an arraystatic <E> List<E>asMutableList(E[] array) static byte[]grow(byte[] array, int addCapacity, int maxCapacity) Copies an existing byte array into a newly allocated, bigger one.static <T> T[]grow(T[] array, int addCapacity, int maxCapacity) Copies an existing object array into a newly allocated, bigger one.static intgrowCapacity(int currentCapacity, int addCapacity, int maxCapacity) Calculates a new array capacity based on existing length, required capacity and maximum capacity.static <T> T[]prependToArray(T item, T[] array, Class<?> type) Add element to the start of an arraystatic <T> T[]removeFromArray(T[] array, Object item) static <T> T[]removeNulls(T[] array)
-
Method Details
-
removeFromArray
-
add
public static <T> T[] add(T[] array1, T[] array2) Add arrays- Type Parameters:
T- the array entry type- Parameters:
array1- An array to add to (or null)array2- An array to add to (or null)- Returns:
- new array with contents of both arrays, or null if both arrays are null
-
addToArray
Add element to an array- Type Parameters:
T- the array entry type- Parameters:
array- The array to add to (or null)item- The item to addtype- The type of the array (in case of null array)- Returns:
- new array with contents of array plus item
-
prependToArray
Add element to the start of an array- Type Parameters:
T- the array entry type- Parameters:
array- The array to add to (or null)item- The item to addtype- The type of the array (in case of null array)- Returns:
- new array with contents of array plus item
-
asMutableList
- Type Parameters:
E- the array entry type- Parameters:
array- Any array of object- Returns:
- A new modifiable list initialised with the elements from
array.
-
removeNulls
public static <T> T[] removeNulls(T[] array) -
growCapacity
public static int growCapacity(int currentCapacity, int addCapacity, int maxCapacity) throws IllegalArgumentException Calculates a new array capacity based on existing length, required capacity and maximum capacity.- Parameters:
currentCapacity- the array's current capacityaddCapacity- the extra capacity to addmaxCapacity- the array's maximum capacity- Returns:
- the calculated new array size
- Throws:
IllegalArgumentException- whencurrentCapacityormaxCapacityis < 0, or whenaddCapacityis <= 0, or when it is not possible to get a new capacity using the given arguments without going overmaxCapacity.
-
grow
public static byte[] grow(byte[] array, int addCapacity, int maxCapacity) throws IllegalArgumentException Copies an existing byte array into a newly allocated, bigger one.- Parameters:
array- the existing arrayaddCapacity- the extra capacity to addmaxCapacity- the array's maximum capacity- Returns:
- the grown array copy.
- Throws:
IllegalArgumentException- whencurrentCapacityormaxCapacityis < 0, or whenaddCapacityis <= 0, or when it is not possible to get a bigger array without going overmaxCapacity.
-
grow
public static <T> T[] grow(T[] array, int addCapacity, int maxCapacity) throws IllegalArgumentException Copies an existing object array into a newly allocated, bigger one.- Parameters:
array- the existing arrayaddCapacity- the extra capacity to addmaxCapacity- the array's maximum capacity- Returns:
- the grown array copy.
- Throws:
IllegalArgumentException- whencurrentCapacityormaxCapacityis < 0, or whenaddCapacityis <= 0, or when it is not possible to get a bigger array without going overmaxCapacity.
-