public class GcElUtilsSafe extends Object
Modifier and Type | Field and Description |
---|---|
static String |
DATE_FORMAT
string format of dates
|
static String |
DATE_FORMAT2
string format of dates
|
static String |
DATE_MINUTES_SECONDS_FORMAT
format including minutes and seconds: yyyy/MM/dd HH:mm:ss
|
static String |
DATE_MINUTES_SECONDS_NO_SLASH_FORMAT
format including minutes and seconds: yyyyMMdd HH:mm:ss
|
static int |
DEFAULT_BUFFER_SIZE
The name says it all.
|
static String |
EMPTY
The empty String
"" . |
static Object[] |
EMPTY_OBJECT_ARRAY
An empty immutable
Object array. |
static String[] |
EMPTY_STRING_ARRAY
An empty immutable
String array. |
static int |
INDEX_NOT_FOUND
Represents a failed index search.
|
static String |
LOG_ERROR |
static int |
NOT_FOUND
special number when a number is not found
|
static long |
ONE_GB
The number of bytes in a gigabyte.
|
static long |
ONE_KB
The number of bytes in a kilobyte.
|
static long |
ONE_MB
The number of bytes in a megabyte.
|
static String |
TIMESTAMP_FILE_FORMAT
string format of dates for file names
|
static String |
TIMESTAMP_FORMAT
format on screen of config for milestone: yyyy/MM/dd HH:mm:ss.SSS
|
static String |
TIMESTAMP_NO_SLASH_FORMAT
format on screen of config for milestone: yyyyMMdd HH:mm:ss.SSS
|
Constructor and Description |
---|
GcElUtilsSafe() |
Modifier and Type | Method and Description |
---|---|
static String |
abbreviate(String str,
int maxWidth)
Abbreviates a String using ellipses.
|
static String |
abbreviate(String str,
int offset,
int maxWidth)
Abbreviates a String using ellipses.
|
static <T> void |
addIfNotThere(Collection<T> list,
Collection<T> listToAdd)
add each element of listToAdd if it is not already in list
|
static String |
append(Object... objects)
append objects since there is no way to do this in EL
|
static void |
append(StringBuilder result,
String separatorIfResultNotEmpty,
String stringToAppend)
append and maybe put a separator in there
|
static boolean |
appendIfNotBlank(StringBuilder result,
Object theStringOrArrayOrList)
if theString is not blank, apppend it to the result, and if appending,
|
static boolean |
appendIfNotBlank(StringBuilder result,
String prefix,
Object theStringOrArrayOrList)
if theString is not Blank, apppend it to the result, and if appending,
add a prefix (if not null)
|
static boolean |
appendIfNotBlank(StringBuilder result,
String prefix,
Object theStringOrArrayOrList,
String suffix)
if theString is not Blank, apppend it to the result, and if appending,
add a prefix and suffix (if not null)
|
static boolean |
appendIfNotBlank(StringBuilder result,
String prefix,
String prefixIfNotBlank,
Object theStringOrArrayOrList,
String suffix)
if theString is not Blank, apppend it to the result, and if appending,
add a prefix and suffix (if not null)
|
static String |
appendIfNotBlankString(String string,
String separator,
String suffix)
append a string to another string if both not blank, with separator.
|
static boolean |
appendIfNotEmpty(StringBuilder result,
Object theStringOrArrayOrList)
if theString is not empty, apppend it to the result, and if appending,
|
static boolean |
appendIfNotEmpty(StringBuilder result,
String prefix,
Object theStringOrArrayOrList)
if theString is not empty, apppend it to the result, and if appending,
add a prefix (if not null)
|
static boolean |
appendIfNotEmpty(StringBuilder result,
String prefix,
Object theStringOrArrayOrList,
String suffix)
if theString is not empty, apppend it to the result, and if appending,
add a prefix and suffix (if not null)
|
static boolean |
appendIfNotEmpty(StringBuilder result,
String prefix,
String prefixIfNotEmpty,
Object theStringOrArrayOrList,
String suffix)
if theString is not empty, apppend it to the result, and if appending,
add a prefix and suffix (if not null)
|
static String |
argAfter(String[] args,
String argBefore)
return the arg after the argBefore, or null if not there, or exception
if argBefore is not found
|
static <T> T |
arrayPopOne(T[] array)
Return the zero element of the array, if it exists, null if the array is empty.
|
static void |
assertion(boolean isTrue,
String reason)
If false, throw an assertException, and give a reason
|
static <T> List<T> |
batchList(Collection<T> collection,
int batchSize,
int batchIndex)
retrieve a batch by 0 index.
|
static int |
batchNumberOfBatches(Collection<?> collection,
int batchSize)
If batching this is the number of batches
|
static int |
batchNumberOfBatches(int count,
int batchSize)
If batching this is the number of batches
|
static BigDecimal |
bigDecimalObjectValue(Object input)
Convert an object to a byte, allow nulls
|
static Boolean |
booleanObjectValue(Object object)
get the Boolean value for an object
|
static boolean |
booleanValue(Object object)
get the boolean value for an object, cant be null or blank
|
static boolean |
booleanValue(Object object,
boolean defaultBoolean)
get the boolean value for an object
|
static String |
byteCountToDisplaySize(long size)
Returns a human-readable version of the file size (original is in
bytes).
|
static Byte |
byteObjectValue(Object input)
Convert an object to a byte, allow nulls
|
static byte |
byteValue(Object input)
convert an object to a byte
|
static String |
capitalize(String str)
Capitalizes a String changing the first letter to title case as
per
Character.toTitleCase(char) . |
static Character |
charObjectValue(Object input)
get the Character wrapper value for the input
|
static char |
charValue(Object input)
convert an object to a char
|
static String |
classesString(Object object)
print the simple names of a list of classes
|
static String |
className(Object object)
null safe classname method, gets the unenhanced name
|
static String |
classNameCollection(Object object)
null safe classname method, max out at 20
|
static <T> T |
collectionPopOne(Collection<T> collection,
boolean exceptionIfMoreThanOne)
Return the zero element of the list, if it exists, null if the list is empty.
|
static String |
collectionToString(Collection collection)
convert a set to a string (comma separate)
|
static int |
compare(Comparable first,
Comparable second)
compare null safe
|
static boolean |
contains(Object[] array,
Object objectToFind)
Checks if the object is in the given array.
|
static boolean |
contains(String str,
char searchChar)
Checks if String contains a search character, handling
null . |
static boolean |
contains(String str,
String searchStr)
Checks if String contains a search String, handling
null . |
static String |
convertLongToChar(long theLong)
this method takes a long (less than 62) and converts it to a 1 character
string (a-z, A-Z, 0-9)
|
static String |
convertLongToCharSmall(long theLong)
this method takes a long (less than 36) and converts it to a 1 character
string (A-Z, 0-9)
|
static String |
convertLongToString(long theLong)
convert a long to a string by converting it to base 62 (26 lower, 26 upper,
10 digits)
|
static String |
convertLongToStringSmall(long theLong)
convert a long to a string by converting it to base 36 (26 upper, 10
digits)
|
static String |
convertMillisToFriendlyString(Integer duration)
convert millis to friendly string
|
static String |
convertMillisToFriendlyString(Long duration)
convert millis to friendly string
|
static Long |
dateLongValue(String date)
convert a string date into a long date (e.g.
|
static String |
dateStringValue(Date date)
date object to a string:
|
static String |
dateStringValue(Long theDate)
date object to a string:
|
static String |
dateToString(Date date)
convert a date to a string using the standard web service pattern
yyyy/MM/dd HH:mm:ss.SSS Note that HH is 0-23
|
static Date |
dateValue(Object inputObject)
Convert an object to a java.util.Date.
|
static String |
defaultIfBlank(String string,
String defaultStringIfBlank)
return the string or the other if the first is blank
|
static String |
defaultIfEmpty(String str,
String defaultStr)
Returns either the passed in String, or if the String is
empty or
null , the value of defaultStr . |
static <T> T |
defaultIfNull(T theValue,
T defaultIfTheValueIsNull)
genericized method to see if first is null, if so then return second, else first.
|
static String |
defaultString(String str)
Returns either the passed in String,
or if the String is
null , an empty String (""). |
static String |
defaultString(String str,
String defaultStr)
Returns either the passed in String, or if the String is
null , the value of defaultStr . |
static Double |
doubleObjectValue(Object input,
boolean allowNullBlank)
get the Double value of an object
|
static double |
doubleValue(Object input)
get the double value of an object
|
static double |
doubleValueNoError(Object input)
get the double value of an object, do not throw an
exception if there is an
error
|
static String |
encryptSha(String plaintext)
encrypt a message to SHA
|
static boolean |
equals(Object object1,
Object object2)
Compares two objects for equality, where either one or both
objects may be
null . |
static boolean |
equals(String first,
String second)
null safe string compare
|
static boolean |
equalsIgnoreCase(String str1,
String str2)
equalsignorecase
|
static String |
escapeUrlDecode(String string)
unescape url chars (e.g.
|
static String |
escapeUrlEncode(String string)
escape url chars (e.g.
|
static String |
extensionFromName(String name)
get the extension from name.
|
static Float |
floatObjectValue(Object input,
boolean allowNullBlank)
get the Float value of an object
|
static float |
floatValue(Object input)
get the float value of an object
|
static float |
floatValueNoError(Object input)
get the float value of an object, do not throw an exception if there is an
error
|
static String |
formatNumberWithCommas(Long number) |
static Object |
get(Object arrayOrCollection,
int index)
Get a specific index of an array or collection (note for collections and
iterating, it is more efficient to get an iterator and iterate
|
static Throwable |
getCause(Throwable throwable)
Introspects the
Throwable to obtain the cause. |
static Throwable |
getCause(Throwable throwable,
String[] methodNames)
Introspects the
Throwable to obtain the cause. |
static String |
getFullStackTrace(Throwable throwable)
A way to get the entire nested stack-trace of an throwable.
|
static Long |
getMaxLongValue(Long... values) |
static Long |
getMinLongValue(Long... values) |
static Throwable[] |
getThrowables(Throwable throwable)
Returns the list of
Throwable objects in the
exception chain. |
static char |
incrementChar(char theChar)
increment a character (A-Z then 0-9)
|
static char[] |
incrementStringInt(char[] string)
Increment a string with A-Z and 0-9 (no lower case so case insensitive apps
like windows IE will still work)
|
static int |
indexOf(Object[] array,
Object objectToFind)
Find the index of the given object in the array.
|
static int |
indexOf(Object[] array,
Object objectToFind,
int startIndex)
Find the index of the given object in the array starting at the given index.
|
static Integer |
intObjectValue(Object input,
boolean allowNullBlank)
get the Integer value of an object
|
static int |
intValue(Object input)
convert an object to a int
|
static int |
intValue(Object input,
int valueIfNull)
convert an object to a int
|
static int |
intValueNoError(Object input)
get the int value of an object, do not throw an exception if there is an
error
|
static int |
ipInt(String ip)
get the ip addres integer from a string ip address
|
static boolean |
ipOnNetwork(String ipString,
String networkIpString,
int mask)
see if an ip address is on a network
|
static boolean |
ipOnNetworks(String ipString,
String networkIpStrings)
see if an ip address is on a network
|
static int |
ipReadyForAnd(int ip,
int maskLength)
get the ip address after putting 1's where the subnet mask is not
|
static boolean |
isAscii(char input)
is ascii char
|
static boolean |
isBlank(Object input)
See if the input is null or if string, if it is empty or blank (whitespace)
|
static boolean |
isBlank(String str)
Checks if a String is whitespace, empty ("") or null.
|
static boolean |
isEmpty(String str)
Checks if a String is empty ("") or null.
|
static boolean |
isNestedThrowable(Throwable throwable)
Checks whether this
Throwable class can store a cause. |
static boolean |
isNotBlank(String str) |
static boolean |
isScalar(Class<?> type)
see if a class is a scalar (not bean, not array or list, etc)
|
static boolean |
isThrowableNested()
Checks if the Throwable class has a
getCause method. |
static Iterator |
iterator(Object collection)
null safe iterator getter if the type if collection
|
static String |
join(Iterator iterator,
char separator)
Joins the elements of the provided
Iterator into
a single String containing the provided elements. |
static String |
join(Iterator iterator,
String separator)
Joins the elements of the provided
Iterator into
a single String containing the provided elements. |
static String |
join(Object[] array)
Joins the elements of the provided array into a single String
containing the provided list of elements.
|
static String |
join(Object[] array,
char separator)
Joins the elements of the provided array into a single String
containing the provided list of elements.
|
static String |
join(Object[] array,
String separator)
Joins the elements of the provided array into a single String
containing the provided list of elements.
|
static String |
leftPad(String str,
int size)
Left pad a String with spaces (' ').
|
static String |
leftPad(String str,
int size,
char padChar)
Left pad a String with a specified character.
|
static String |
leftPad(String str,
int size,
String padStr)
Left pad a String with a specified String.
|
static int |
length(Object arrayOrCollection)
Null safe array length or map
|
static int |
lengthAscii(String input)
find the length of ascii chars (non ascii are counted as two)
|
static <T> T |
listPopOne(List<T> list)
Return the zero element of the list, if it exists, null if the list is empty.
|
static Long |
longObjectValue(Object input,
boolean allowNullBlank)
get the Long value of an object
|
static long |
longValue(Object input)
convert an object to a long
|
static long |
longValue(Object input,
long valueIfNull)
convert an object to a long
|
static long |
longValueNoError(Object input)
get the long value of an object, do not throw an exception if there is an
error
|
static String |
mapToString(Map map)
convert a set to a string (comma separate)
|
static String |
MapToString(Map map)
Deprecated.
use mapToString(map)
|
static int |
monthInt(String mon)
convert a month string to an int (1 indexed).
|
static Object |
next(Object arrayOrCollection,
Iterator iterator,
int index)
If array, get the element based on index, if Collection, get it based on
iterator.
|
static <T> Collection<T> |
nonNull(Collection<T> list)
make sure a collection is non null.
|
static <T> List<T> |
nonNull(List<T> list)
make sure a list is non null.
|
static <K,V> Map<K,V> |
nonNull(Map<K,V> map)
make sure it is non null, if null, then give new map
|
static <T> Set<T> |
nonNull(Set<T> set)
make sure a list is non null.
|
static <T> T[] |
nonNull(T[] array,
Class<?> theClass)
make sure a array is non null.
|
static String |
normalizeEmailAddresses(String emailAddresses)
take email addresses from a textarea and turn them into semi separated
|
static boolean |
nullOrBlank(Object object)
is an object null or blank
|
static long |
packInts(int first,
int second)
pack two ints into a long.
|
static String |
parentStemNameFromName(String name)
get the parent stem name from name.
|
static String |
parentStemNameFromName(String name,
boolean nullForRoot)
get the parent stem name from name.
|
static String |
prefixOrSuffix(String startString,
String separator,
boolean isPrefix)
get the prefix or suffix of a string based on a separator
|
static Object |
remove(Object arrayOrCollection,
int index)
Remove the iterator or index
|
static Object |
remove(Object arrayOrCollection,
Iterator iterator,
int index)
Remove the iterator or index
|
static String |
repeat(String str,
int repeat)
Repeat a String
repeat times to form a
new String. |
static void |
replace(StringBuffer outBuffer,
String text,
Object searchFor,
Object replaceWith)
replace a string or strings from a string, and put the output in a string
buffer.
|
static void |
replace(StringBuffer outBuffer,
String text,
Object searchFor,
Object replaceWith,
boolean recurse)
replace a string or strings from a string, and put the output in a string
buffer
|
static String |
replace(String text,
Object searchFor,
Object replaceWith)
replace a string or strings from a string, and put the output in a string
buffer.
|
static String |
replace(String text,
Object searchFor,
Object replaceWith,
boolean recurse)
replace a string or strings from a string, and put the output in a string
buffer
|
static String |
replace(String text,
Object searchFor,
Object replaceWith,
boolean recurse,
boolean removeIfFound)
replace a string or strings from a string, and put the output in a string
buffer
|
static String |
replace(String text,
String repl,
String with)
Replaces all occurrences of a String within another String.
|
static String |
replace(String text,
String repl,
String with,
int max)
Replaces a String with another String inside a larger String, for the
first
max values of the search String. |
static void |
replace(Writer outWriter,
String text,
Object searchFor,
Object replaceWith)
replace a string or strings from a string, and put the output in a string
buffer.
|
static void |
replace(Writer outWriter,
String text,
Object searchFor,
Object replaceWith,
boolean recurse)
replace a string or strings from a string, and put the output in a string
buffer
|
static String |
replaceWhitespaceWithSpace(String input)
replace all whitespace with space
|
static String |
rightPad(String str,
int size)
Right pad a String with spaces (' ').
|
static String |
rightPad(String str,
int size,
char padChar)
Right pad a String with a specified character.
|
static String |
rightPad(String str,
int size,
String padStr)
Right pad a String with a specified String.
|
static <T> T |
setPopOne(Set<T> set)
Return the zero element of the set, if it exists, null if the list is empty.
|
static <T> Set<T> |
setShorten(Set<T> theSet,
int maxSize)
shorten a set if it is too long
|
static String |
setToString(Set set)
convert a set to a string (comma separate)
|
static Short |
shortObjectValue(Object input)
get the Short value of an object.
|
static short |
shortValue(Object input)
convert an object to a short
|
static void |
sleep(long millis)
sleep, if interrupted, throw runtime
|
static void |
sleepWithStdoutCountdown(int seconds) |
static String[] |
split(String str)
Splits the provided text into an array, using whitespace as the
separator.
|
static String[] |
split(String str,
char separatorChar)
Splits the provided text into an array, separator specified.
|
static String[] |
split(String str,
String separatorChars)
Splits the provided text into an array, separators specified.
|
static String[] |
split(String str,
String separatorChars,
int max)
Splits the provided text into an array with a maximum length,
separators specified.
|
static String[] |
splitByWholeSeparator(String str,
String separator)
Splits the provided text into an array, separator string specified.
|
static String[] |
splitByWholeSeparator(String str,
String separator,
int max)
Splits the provided text into an array, separator string specified.
|
static String[] |
splitPreserveAllTokens(String str)
Splits the provided text into an array, using whitespace as the
separator, preserving all tokens, including empty tokens created by
adjacent separators.
|
static String[] |
splitPreserveAllTokens(String str,
char separatorChar)
Splits the provided text into an array, separator specified,
preserving all tokens, including empty tokens created by adjacent
separators.
|
static String[] |
splitPreserveAllTokens(String str,
String separatorChars)
Splits the provided text into an array, separators specified,
preserving all tokens, including empty tokens created by adjacent
separators.
|
static String[] |
splitPreserveAllTokens(String str,
String separatorChars,
int max)
Splits the provided text into an array with a maximum length,
separators specified, preserving all tokens, including empty tokens
created by adjacent separators.
|
static String[] |
splitTrim(String input,
String separator)
split a string based on a separator into an array, and trim each entry (see
the Commons Util trim() for more details)
|
static String[] |
splitTrim(String input,
String separator,
boolean treatAdjacentSeparatorsAsOne)
split a string based on a separator into an array, and trim each entry (see
the Commons Util trim() for more details)
|
static List<String> |
splitTrimToList(String input,
String separator)
split a string based on a separator into an array, and trim each entry (see
the Commons Util trim() for more details)
|
static Set<String> |
splitTrimToSet(String input,
String separator)
split a string based on a separator into an array, and trim each entry (see
the Commons Util trim() for more details)
|
static int |
stringLength(String string)
string length
|
static Date |
stringToDate(String dateString)
convert a string to a date using the standard web service pattern Note
that HH is 0-23
|
static Date |
stringToDate2(String input)
take as input:
yyyy/mm/dd
yyyy-mm-dd
dd-mon-yyyy
yyyy/mm/dd hh:mm:ss
dd-mon-yyyy hh:mm:ss
yyyy/mm/dd hh:mm:ss.SSS
dd-mon-yyyy hh:mm:ss.SSS
|
static Timestamp |
stringToTimestamp(String input)
convert a string to timestamp based on the following formats:
yyyyMMdd
yyyy/MM/dd
yyyy/MM/dd HH:mm:ss
yyyy/MM/dd HH:mm:ss.SSS
yyyy/MM/dd HH:mm:ss.SSSSSS
|
static String |
stringValue(Date date)
convert a date to the standard string yyyy/mm/dd
|
static String |
stringValue(Object input)
convert an object to a string
|
static String |
stripEnd(String str,
String stripChars)
Strips any of a set of characters from the end of a String.
|
static String |
stripLastSlashIfExists(String input)
strip the last slash (/ or \) from a string if it exists
|
static String |
stripStart(String str,
String stripChars)
Strips any of a set of characters from the start of a String.
|
static String |
stripSuffix(String string,
String suffix)
strip the suffix off
|
static String |
substringAfter(String str,
String separator)
Gets the substring after the first occurrence of a separator.
|
static String |
substringAfterLast(String str,
String separator)
Gets the substring after the last occurrence of a separator.
|
static String |
substringBefore(String str,
String separator)
Gets the substring before the first occurrence of a separator.
|
static String |
substringBeforeLast(String str,
String separator)
Gets the substring before the last occurrence of a separator.
|
static String |
suffixAfterChar(String input,
char theChar)
return the suffix after a char.
|
static String |
timestampToFileString(Date timestamp)
Convert a timestamp into a string: yyyy/MM/dd HH:mm:ss.SSS
|
static String |
timestampToString(Date timestamp)
Convert a timestamp into a string: yyyy/MM/dd HH:mm:ss.SSS
|
static <T> T[] |
toArray(Collection collection,
Class<T> theClass)
convert a list into an array of type of theClass
|
static Object |
toArray(Object objectOrArrayOrCollection)
Convert a list to an array with the type of the first element e.g.
|
static <T> List<T> |
toList(T... objects)
return a list of objects from varargs.
|
static List<Object> |
toListObject(Object... objects)
return a list of objects from varargs.
|
static Map<String,String> |
toMap(String... strings)
turn some strings into a map
|
static <T> Set<T> |
toSet(T... objects)
return a set of objects from varargs.
|
static <T> Set<T> |
toSetObject(T object)
return a set of string
|
static String |
toStringForLog(Object object)
print out various types of objects
|
static String |
toStringForLog(Object object,
int maxChars)
print out various types of objects
|
static Map<String,Object> |
toStringObjectMap(Object... stringObjects)
turn some strings into a map
|
static String |
toStringSafe(Object object)
fail safe toString for Exception blocks, and include the stack
if there is a problem with toString()
|
static Timestamp |
toTimestamp(Object input)
Convert a string or object to a timestamp (could be string, date, timestamp, etc)
yyyymmdd
or
yyyy/MM/dd
or
yyyy/MM/dd HH:mm:ss
or
yyyy/MM/dd HH:mm:ss.SSS
or
yyyy/MM/dd HH:mm:ss.SSSSSS
|
static String |
trim(String str)
trim whitespace from string
|
static String |
trimToEmpty(String str)
trim to empty, convert null to empty
|
static String |
truncateAscii(String input,
int requiredLength)
find the length of ascii chars (non ascii are counted as two)
|
static String |
uniqueId()
get a unique string identifier based on the current time,
this is not globally unique, just unique for as long as this
server is running...
|
static int |
unpackInt(long theLong,
boolean isFirst)
take a long
|
static boolean |
validEmail(String email) |
static String |
xmlEscape(String input,
boolean isEscape)
Convert an XML string to HTML to display on the screen
|
public static final String LOG_ERROR
public static final long ONE_KB
public static final long ONE_MB
public static final long ONE_GB
public static final String DATE_FORMAT
public static final String TIMESTAMP_FILE_FORMAT
public static final String DATE_FORMAT2
public static final String DATE_MINUTES_SECONDS_FORMAT
public static final String DATE_MINUTES_SECONDS_NO_SLASH_FORMAT
public static final String TIMESTAMP_FORMAT
public static final String TIMESTAMP_NO_SLASH_FORMAT
public static final int NOT_FOUND
public static final int DEFAULT_BUFFER_SIZE
public static final String[] EMPTY_STRING_ARRAY
String
array.public static final Object[] EMPTY_OBJECT_ARRAY
Object
array.public static final String EMPTY
""
.public static final int INDEX_NOT_FOUND
public static String append(Object... objects)
objects
- inputs to append to each otherpublic static String normalizeEmailAddresses(String emailAddresses)
emailAddresses
- can be whitespace, comma, or semi separatedpublic static boolean validEmail(String email)
email
- public static <T> Set<T> setShorten(Set<T> theSet, int maxSize)
T
- theSet
- maxSize
- public static String formatNumberWithCommas(Long number)
number
- e.g. 12345678public static int compare(Comparable first, Comparable second)
first
- second
- public static Map<String,String> toMap(String... strings)
strings
- public static Map<String,Object> toStringObjectMap(Object... stringObjects)
stringObjects
- is an array of String,Object,String,Object etc where the
Strings are the key, and the Object is the valuepublic static String convertMillisToFriendlyString(Integer duration)
duration
- public static String convertMillisToFriendlyString(Long duration)
duration
- public static String argAfter(String[] args, String argBefore)
args
- argBefore
- public static void append(StringBuilder result, String separatorIfResultNotEmpty, String stringToAppend)
result
- separatorIfResultNotEmpty
- stringToAppend
- public static String byteCountToDisplaySize(long size)
size
- The number of bytes.public static String suffixAfterChar(String input, char theChar)
input
- stringtheChar
- charpublic static void sleep(long millis)
millis
- public static void sleepWithStdoutCountdown(int seconds)
seconds
- public static String encryptSha(String plaintext)
plaintext
- public static String uniqueId()
public static <T> T[] nonNull(T[] array, Class<?> theClass)
T
- array
- theClass
- to make array frompublic static String stripSuffix(String string, String suffix)
string
- suffix
- public static String prefixOrSuffix(String startString, String separator, boolean isPrefix)
startString
- is the string to start withseparator
- is the separator to split onisPrefix
- if thre prefix or suffix should be returnedpublic static String extensionFromName(String name)
name
- public static String parentStemNameFromName(String name)
name
- public static String parentStemNameFromName(String name, boolean nullForRoot)
name
- nullForRoot
- null for root, otherwise colonpublic static String defaultIfBlank(String string, String defaultStringIfBlank)
string
- defaultStringIfBlank
- public static <T> T defaultIfNull(T theValue, T defaultIfTheValueIsNull)
T
- theValue
- first inputdefaultIfTheValueIsNull
- second inputpublic static <T> void addIfNotThere(Collection<T> list, Collection<T> listToAdd)
T
- list
- to add tolistToAdd
- each element will be added to list, or null if nonepublic static String collectionToString(Collection collection)
collection
- public static String setToString(Set set)
set
- @Deprecated public static String MapToString(Map map)
map
- public static String mapToString(Map map)
map
- public static String toStringForLog(Object object)
object
- public static String toStringForLog(Object object, int maxChars)
object
- maxChars
- is the max chars that should be returned (abbreviate if longer), or -1 for any amountpublic static int batchNumberOfBatches(int count, int batchSize)
count
- is size of setbatchSize
- public static int batchNumberOfBatches(Collection<?> collection, int batchSize)
collection
- batchSize
- public static <T> List<T> batchList(Collection<T> collection, int batchSize, int batchIndex)
T
- template typecollection
- batchSize
- batchIndex
- public static String[] splitTrim(String input, String separator)
input
- is the delimited input to split and trimseparator
- is what to split onpublic static List<String> splitTrimToList(String input, String separator)
input
- is the delimited input to split and trimseparator
- is what to split onpublic static Set<String> splitTrimToSet(String input, String separator)
input
- is the delimited input to split and trimseparator
- is what to split onpublic static String[] splitTrim(String input, String separator, boolean treatAdjacentSeparatorsAsOne)
input
- is the delimited input to split and trimseparator
- is what to split ontreatAdjacentSeparatorsAsOne
- public static String escapeUrlEncode(String string)
string
- inputpublic static String escapeUrlDecode(String string)
string
- inputpublic static <T> List<T> nonNull(List<T> list)
T
- list
- public static <T> Collection<T> nonNull(Collection<T> list)
T
- list
- public static <T> Set<T> nonNull(Set<T> set)
T
- set
- public static <K,V> Map<K,V> nonNull(Map<K,V> map)
K
- key of mapV
- value of mapmap
- is mappublic static <T> List<T> toList(T... objects)
T
- template type of the objectsobjects
- public static List<Object> toListObject(Object... objects)
objects
- public static <T> Set<T> toSet(T... objects)
T
- template type of the objectsobjects
- public static <T> Set<T> toSetObject(T object)
T
- template type of the objectsobject
- public static void assertion(boolean isTrue, String reason)
isTrue
- reason
- public static Iterator iterator(Object collection)
collection
- public static int length(Object arrayOrCollection)
arrayOrCollection
- public static Object next(Object arrayOrCollection, Iterator iterator, int index)
arrayOrCollection
- iterator
- index
- public static Object remove(Object arrayOrCollection, int index)
arrayOrCollection
- index
- public static Object remove(Object arrayOrCollection, Iterator iterator, int index)
arrayOrCollection
- iterator
- index
- public static String classesString(Object object)
object
- public static String classNameCollection(Object object)
object
- public static String className(Object object)
object
- public static Object toArray(Object objectOrArrayOrCollection)
objectOrArrayOrCollection
- is a listpublic static <T> T[] toArray(Collection collection, Class<T> theClass)
T
- is the type of the arraycollection
- list to converttheClass
- type of array to returnpublic static String replace(String text, Object searchFor, Object replaceWith)
text
- string to look insearchFor
- string array to search forreplaceWith
- string array to replace withpublic static String replace(String text, Object searchFor, Object replaceWith, boolean recurse)
text
- string to look insearchFor
- string array to search forreplaceWith
- string array to replace withrecurse
- if true then do multiple replaces (on the replacements)public static String replace(String text, Object searchFor, Object replaceWith, boolean recurse, boolean removeIfFound)
text
- string to look insearchFor
- string array to search forreplaceWith
- string array to replace withrecurse
- if true then do multiple replaces (on the replacements)removeIfFound
- true if removing from searchFor and replaceWith if foundpublic static String replace(String text, String repl, String with)
Replaces all occurrences of a String within another String.
A null
reference passed to this method is a no-op.
replace(null, *, *) = null replace("", *, *) = "" replace("any", null, *) = "any" replace("any", *, null) = "any" replace("any", "", *) = "any" replace("aba", "a", null) = "aba" replace("aba", "a", "") = "b" replace("aba", "a", "z") = "zbz"
text
- text to search and replace in, may be nullrepl
- the String to search for, may be nullwith
- the String to replace with, may be nullnull
if
null String inputreplace(String text, String repl, String with, int max)
public static String replace(String text, String repl, String with, int max)
Replaces a String with another String inside a larger String, for the
first max
values of the search String.
A null
reference passed to this method is a no-op.
replace(null, *, *, *) = null replace("", *, *, *) = "" replace("any", null, *, *) = "any" replace("any", *, null, *) = "any" replace("any", "", *, *) = "any" replace("any", *, *, 0) = "any" replace("abaa", "a", null, -1) = "abaa" replace("abaa", "a", "", -1) = "b" replace("abaa", "a", "z", 0) = "abaa" replace("abaa", "a", "z", 1) = "zbaa" replace("abaa", "a", "z", 2) = "zbza" replace("abaa", "a", "z", -1) = "zbzz"
text
- text to search and replace in, may be nullrepl
- the String to search for, may be nullwith
- the String to replace with, may be nullmax
- maximum number of values to replace, or -1
if
no maximumnull
if
null String inputpublic static boolean isEmpty(String str)
Checks if a String is empty ("") or null.
isEmpty(null) = true isEmpty("") = true isEmpty(" ") = false isEmpty("bob") = false isEmpty(" bob ") = false
NOTE: This method changed in Lang version 2.0. It no longer trims the String. That functionality is available in isBlank().
str
- the String to check, may be nulltrue
if the String is empty or nullpublic static void replace(StringBuffer outBuffer, String text, Object searchFor, Object replaceWith)
outBuffer
- stringbuffer to write totext
- string to look insearchFor
- string array to search forreplaceWith
- string array to replace withpublic static void replace(StringBuffer outBuffer, String text, Object searchFor, Object replaceWith, boolean recurse)
outBuffer
- stringbuffer to write totext
- string to look insearchFor
- string array to search forreplaceWith
- string array to replace withrecurse
- if true then do multiple replaces (on the replacements)public static void replace(Writer outWriter, String text, Object searchFor, Object replaceWith)
outWriter
- writer to write totext
- string to look insearchFor
- string array to search forreplaceWith
- string array to replace withpublic static void replace(Writer outWriter, String text, Object searchFor, Object replaceWith, boolean recurse)
outWriter
- writer to write totext
- string to look insearchFor
- string array to search forreplaceWith
- string array to replace withrecurse
- if true then do multiple replaces (on the replacements)public static long packInts(int first, int second)
first
- is first intsecond
- is second intpublic static int unpackInt(long theLong, boolean isFirst)
theLong
- to unpackisFirst
- true for first, false for secondpublic static String toStringSafe(Object object)
object
- public static boolean booleanValue(Object object)
object
- public static boolean booleanValue(Object object, boolean defaultBoolean)
object
- defaultBoolean
- if object is null or emptypublic static Boolean booleanObjectValue(Object object)
object
- public static boolean nullOrBlank(Object object)
object
- public static Long dateLongValue(String date)
date
- public static String dateStringValue(Date date)
date
- public static String dateStringValue(Long theDate)
theDate
- public static Date dateValue(Object inputObject)
Convert an object to a java.util.Date. allows, dates, null, blank, yyyymmdd or yyyymmdd hh24:mm:ss or yyyy/MM/dd HH:mm:ss.SSS
inputObject
- is the String or Date to convertpublic static Date stringToDate2(String input)
input
- public static int monthInt(String mon)
mon
- public static boolean isBlank(Object input)
input
- public static boolean isScalar(Class<?> type)
type
- public static Timestamp toTimestamp(Object input)
Convert a string or object to a timestamp (could be string, date, timestamp, etc) yyyymmdd or yyyy/MM/dd or yyyy/MM/dd HH:mm:ss or yyyy/MM/dd HH:mm:ss.SSS or yyyy/MM/dd HH:mm:ss.SSSSSS
input
- RuntimeException
- if invalid formatpublic static String stringValue(Object input)
input
- is the object to convertpublic static String timestampToString(Date timestamp)
timestamp
- public static String timestampToFileString(Date timestamp)
timestamp
- public static String stringValue(Date date)
date
- public static Timestamp stringToTimestamp(String input)
convert a string to timestamp based on the following formats: yyyyMMdd yyyy/MM/dd yyyy/MM/dd HH:mm:ss yyyy/MM/dd HH:mm:ss.SSS yyyy/MM/dd HH:mm:ss.SSSSSS
input
- public static BigDecimal bigDecimalObjectValue(Object input)
input
- public static Byte byteObjectValue(Object input)
input
- public static byte byteValue(Object input)
input
- public static Double doubleObjectValue(Object input, boolean allowNullBlank)
input
- is a number or StringallowNullBlank
- used to default to false, if true, return null if nul inputtedpublic static double doubleValue(Object input)
input
- is a number or Stringpublic static double doubleValueNoError(Object input)
input
- is a number or Stringpublic static Float floatObjectValue(Object input, boolean allowNullBlank)
input
- is a number or StringallowNullBlank
- true if allow null or blankpublic static float floatValue(Object input)
input
- is a number or Stringpublic static float floatValueNoError(Object input)
input
- is a number or Stringpublic static Integer intObjectValue(Object input, boolean allowNullBlank)
input
- is a number or StringallowNullBlank
- true if convert null or blank to nullpublic static int intValue(Object input)
input
- public static int intValue(Object input, int valueIfNull)
input
- valueIfNull
- is if the input is null or empty, return this valuepublic static int intValueNoError(Object input)
input
- is a number or Stringpublic static Long longObjectValue(Object input, boolean allowNullBlank)
input
- is a number or StringallowNullBlank
- true if null or blank converts to nullpublic static long longValue(Object input)
input
- public static long longValue(Object input, long valueIfNull)
input
- valueIfNull
- is if the input is null or empty, return this valuepublic static long longValueNoError(Object input)
input
- is a number or Stringpublic static Short shortObjectValue(Object input)
input
- is a number or Stringpublic static short shortValue(Object input)
input
- public static Character charObjectValue(Object input)
input
- allow null, return nullpublic static char charValue(Object input)
input
- public static String replaceWhitespaceWithSpace(String input)
input
- public static String convertLongToChar(long theLong)
theLong
- is the long (less than 62) to convert to a 1 character stringpublic static String convertLongToCharSmall(long theLong)
theLong
- is the long (less than 36) to convert to a 1 character stringpublic static String convertLongToString(long theLong)
theLong
- is the long to convertpublic static String convertLongToStringSmall(long theLong)
theLong
- is the long to convertpublic static char incrementChar(char theChar)
theChar
- public static char[] incrementStringInt(char[] string)
string
- public static boolean isAscii(char input)
input
- public static int lengthAscii(String input)
input
- public static int stringLength(String string)
string
- public static String truncateAscii(String input, int requiredLength)
input
- is the string to operate onrequiredLength
- length we need the string to bepublic static boolean equals(String first, String second)
first
- second
- public static boolean isBlank(String str)
Checks if a String is whitespace, empty ("") or null.
isBlank(null) = true isBlank("") = true isBlank(" ") = true isBlank("bob") = false isBlank(" bob ") = false
str
- the String to check, may be nulltrue
if the String is null, empty or whitespacepublic static boolean isNotBlank(String str)
str
- public static String trim(String str)
str
- public static boolean equalsIgnoreCase(String str1, String str2)
str1
- str2
- public static String trimToEmpty(String str)
str
- public static String abbreviate(String str, int maxWidth)
Abbreviates a String using ellipses. This will turn "Now is the time for all good men" into "Now is the time for..."
Specifically:
str
is less than maxWidth
characters
long, return it.(substring(str, 0, max-3) + "...")
.maxWidth
is less than 4
, throw an
IllegalArgumentException
.maxWidth
.StringUtils.abbreviate(null, *) = null StringUtils.abbreviate("", 4) = "" StringUtils.abbreviate("abcdefg", 6) = "abc..." StringUtils.abbreviate("abcdefg", 7) = "abcdefg" StringUtils.abbreviate("abcdefg", 8) = "abcdefg" StringUtils.abbreviate("abcdefg", 4) = "a..." StringUtils.abbreviate("abcdefg", 3) = IllegalArgumentException
str
- the String to check, may be nullmaxWidth
- maximum length of result String, must be at least 4null
if null String inputIllegalArgumentException
- if the width is too smallpublic static String abbreviate(String str, int offset, int maxWidth)
Abbreviates a String using ellipses. This will turn "Now is the time for all good men" into "...is the time for..."
Works like abbreviate(String, int)
, but allows you to specify
a "left edge" offset. Note that this left edge is not necessarily going to
be the leftmost character in the result, or the first character following the
ellipses, but it will appear somewhere in the result.
In no case will it return a String of length greater than
maxWidth
.
StringUtils.abbreviate(null, *, *) = null StringUtils.abbreviate("", 0, 4) = "" StringUtils.abbreviate("abcdefghijklmno", -1, 10) = "abcdefg..." StringUtils.abbreviate("abcdefghijklmno", 0, 10) = "abcdefg..." StringUtils.abbreviate("abcdefghijklmno", 1, 10) = "abcdefg..." StringUtils.abbreviate("abcdefghijklmno", 4, 10) = "abcdefg..." StringUtils.abbreviate("abcdefghijklmno", 5, 10) = "...fghi..." StringUtils.abbreviate("abcdefghijklmno", 6, 10) = "...ghij..." StringUtils.abbreviate("abcdefghijklmno", 8, 10) = "...ijklmno" StringUtils.abbreviate("abcdefghijklmno", 10, 10) = "...ijklmno" StringUtils.abbreviate("abcdefghijklmno", 12, 10) = "...ijklmno" StringUtils.abbreviate("abcdefghij", 0, 3) = IllegalArgumentException StringUtils.abbreviate("abcdefghij", 5, 6) = IllegalArgumentException
str
- the String to check, may be nulloffset
- left edge of source StringmaxWidth
- maximum length of result String, must be at least 4null
if null String inputIllegalArgumentException
- if the width is too smallpublic static String[] split(String str)
Splits the provided text into an array, using whitespace as the
separator.
Whitespace is defined by Character.isWhitespace(char)
.
The separator is not included in the returned String array. Adjacent separators are treated as one separator. For more control over the split use the StrTokenizer class.
A null
input String returns null
.
StringUtils.split(null) = null StringUtils.split("") = [] StringUtils.split("abc def") = ["abc", "def"] StringUtils.split("abc def") = ["abc", "def"] StringUtils.split(" abc ") = ["abc"]
str
- the String to parse, may be nullnull
if null String inputpublic static String[] split(String str, char separatorChar)
Splits the provided text into an array, separator specified. This is an alternative to using StringTokenizer.
The separator is not included in the returned String array. Adjacent separators are treated as one separator. For more control over the split use the StrTokenizer class.
A null
input String returns null
.
StringUtils.split(null, *) = null StringUtils.split("", *) = [] StringUtils.split("a.b.c", '.') = ["a", "b", "c"] StringUtils.split("a..b.c", '.') = ["a", "b", "c"] StringUtils.split("a:b:c", '.') = ["a:b:c"] StringUtils.split("a\tb\nc", null) = ["a", "b", "c"] StringUtils.split("a b c", ' ') = ["a", "b", "c"]
str
- the String to parse, may be nullseparatorChar
- the character used as the delimiter,
null
splits on whitespacenull
if null String inputpublic static String[] split(String str, String separatorChars)
Splits the provided text into an array, separators specified. This is an alternative to using StringTokenizer.
The separator is not included in the returned String array. Adjacent separators are treated as one separator. For more control over the split use the StrTokenizer class.
A null
input String returns null
.
A null
separatorChars splits on whitespace.
StringUtils.split(null, *) = null StringUtils.split("", *) = [] StringUtils.split("abc def", null) = ["abc", "def"] StringUtils.split("abc def", " ") = ["abc", "def"] StringUtils.split("abc def", " ") = ["abc", "def"] StringUtils.split("ab:cd:ef", ":") = ["ab", "cd", "ef"]
str
- the String to parse, may be nullseparatorChars
- the characters used as the delimiters,
null
splits on whitespacenull
if null String inputpublic static String[] split(String str, String separatorChars, int max)
Splits the provided text into an array with a maximum length, separators specified.
The separator is not included in the returned String array. Adjacent separators are treated as one separator.
A null
input String returns null
.
A null
separatorChars splits on whitespace.
If more than max
delimited substrings are found, the last
returned string includes all characters after the first max - 1
returned strings (including separator characters).
StringUtils.split(null, *, *) = null StringUtils.split("", *, *) = [] StringUtils.split("ab de fg", null, 0) = ["ab", "cd", "ef"] StringUtils.split("ab de fg", null, 0) = ["ab", "cd", "ef"] StringUtils.split("ab:cd:ef", ":", 0) = ["ab", "cd", "ef"] StringUtils.split("ab:cd:ef", ":", 2) = ["ab", "cd:ef"]
str
- the String to parse, may be nullseparatorChars
- the characters used as the delimiters,
null
splits on whitespacemax
- the maximum number of elements to include in the
array. A zero or negative value implies no limitnull
if null String inputpublic static String[] splitByWholeSeparator(String str, String separator)
Splits the provided text into an array, separator string specified.
The separator(s) will not be included in the returned String array. Adjacent separators are treated as one separator.
A null
input String returns null
.
A null
separator splits on whitespace.
StringUtils.split(null, *) = null StringUtils.split("", *) = [] StringUtils.split("ab de fg", null) = ["ab", "de", "fg"] StringUtils.split("ab de fg", null) = ["ab", "de", "fg"] StringUtils.split("ab:cd:ef", ":") = ["ab", "cd", "ef"] StringUtils.split("abstemiouslyaeiouyabstemiously", "aeiouy") = ["bst", "m", "sl", "bst", "m", "sl"] StringUtils.split("abstemiouslyaeiouyabstemiously", "aeiouy") = ["abstemiously", "abstemiously"]
str
- the String to parse, may be nullseparator
- String containing the String to be used as a delimiter,
null
splits on whitespacenull
if null String was inputpublic static String[] splitByWholeSeparator(String str, String separator, int max)
Splits the provided text into an array, separator string specified.
Returns a maximum of max
substrings.
The separator(s) will not be included in the returned String array. Adjacent separators are treated as one separator.
A null
input String returns null
.
A null
separator splits on whitespace.
StringUtils.splitByWholeSeparator(null, *, *) = null StringUtils.splitByWholeSeparator("", *, *) = [] StringUtils.splitByWholeSeparator("ab de fg", null, 0) = ["ab", "de", "fg"] StringUtils.splitByWholeSeparator("ab de fg", null, 0) = ["ab", "de", "fg"] StringUtils.splitByWholeSeparator("ab:cd:ef", ":", 2) = ["ab", "cd"] StringUtils.splitByWholeSeparator("abstemiouslyaeiouyabstemiously", "aeiouy", 2) = ["bst", "m"] StringUtils.splitByWholeSeparator("abstemiouslyaeiouyabstemiously", "aeiouy", 2) = ["abstemiously", "abstemiously"]
str
- the String to parse, may be nullseparator
- String containing the String to be used as a delimiter,
null
splits on whitespacemax
- the maximum number of elements to include in the returned
array. A zero or negative value implies no limit.null
if null String was inputpublic static String[] splitPreserveAllTokens(String str)
Splits the provided text into an array, using whitespace as the
separator, preserving all tokens, including empty tokens created by
adjacent separators. This is an alternative to using StringTokenizer.
Whitespace is defined by Character.isWhitespace(char)
.
The separator is not included in the returned String array. Adjacent separators are treated as separators for empty tokens. For more control over the split use the StrTokenizer class.
A null
input String returns null
.
StringUtils.splitPreserveAllTokens(null) = null StringUtils.splitPreserveAllTokens("") = [] StringUtils.splitPreserveAllTokens("abc def") = ["abc", "def"] StringUtils.splitPreserveAllTokens("abc def") = ["abc", "", "def"] StringUtils.splitPreserveAllTokens(" abc ") = ["", "abc", ""]
str
- the String to parse, may be null
null
if null String inputpublic static String[] splitPreserveAllTokens(String str, char separatorChar)
Splits the provided text into an array, separator specified, preserving all tokens, including empty tokens created by adjacent separators. This is an alternative to using StringTokenizer.
The separator is not included in the returned String array. Adjacent separators are treated as separators for empty tokens. For more control over the split use the StrTokenizer class.
A null
input String returns null
.
StringUtils.splitPreserveAllTokens(null, *) = null StringUtils.splitPreserveAllTokens("", *) = [] StringUtils.splitPreserveAllTokens("a.b.c", '.') = ["a", "b", "c"] StringUtils.splitPreserveAllTokens("a..b.c", '.') = ["a", "b", "c"] StringUtils.splitPreserveAllTokens("a:b:c", '.') = ["a:b:c"] StringUtils.splitPreserveAllTokens("a\tb\nc", null) = ["a", "b", "c"] StringUtils.splitPreserveAllTokens("a b c", ' ') = ["a", "b", "c"] StringUtils.splitPreserveAllTokens("a b c ", ' ') = ["a", "b", "c", ""] StringUtils.splitPreserveAllTokens("a b c ", ' ') = ["a", "b", "c", "", ""] StringUtils.splitPreserveAllTokens(" a b c", ' ') = ["", a", "b", "c"] StringUtils.splitPreserveAllTokens(" a b c", ' ') = ["", "", a", "b", "c"] StringUtils.splitPreserveAllTokens(" a b c ", ' ') = ["", a", "b", "c", ""]
str
- the String to parse, may be null
separatorChar
- the character used as the delimiter,
null
splits on whitespacenull
if null String inputpublic static String[] splitPreserveAllTokens(String str, String separatorChars)
Splits the provided text into an array, separators specified, preserving all tokens, including empty tokens created by adjacent separators. This is an alternative to using StringTokenizer.
The separator is not included in the returned String array. Adjacent separators are treated as separators for empty tokens. For more control over the split use the StrTokenizer class.
A null
input String returns null
.
A null
separatorChars splits on whitespace.
StringUtils.splitPreserveAllTokens(null, *) = null StringUtils.splitPreserveAllTokens("", *) = [] StringUtils.splitPreserveAllTokens("abc def", null) = ["abc", "def"] StringUtils.splitPreserveAllTokens("abc def", " ") = ["abc", "def"] StringUtils.splitPreserveAllTokens("abc def", " ") = ["abc", "", def"] StringUtils.splitPreserveAllTokens("ab:cd:ef", ":") = ["ab", "cd", "ef"] StringUtils.splitPreserveAllTokens("ab:cd:ef:", ":") = ["ab", "cd", "ef", ""] StringUtils.splitPreserveAllTokens("ab:cd:ef::", ":") = ["ab", "cd", "ef", "", ""] StringUtils.splitPreserveAllTokens("ab::cd:ef", ":") = ["ab", "", cd", "ef"] StringUtils.splitPreserveAllTokens(":cd:ef", ":") = ["", cd", "ef"] StringUtils.splitPreserveAllTokens("::cd:ef", ":") = ["", "", cd", "ef"] StringUtils.splitPreserveAllTokens(":cd:ef:", ":") = ["", cd", "ef", ""]
str
- the String to parse, may be null
separatorChars
- the characters used as the delimiters,
null
splits on whitespacenull
if null String inputpublic static String[] splitPreserveAllTokens(String str, String separatorChars, int max)
Splits the provided text into an array with a maximum length, separators specified, preserving all tokens, including empty tokens created by adjacent separators.
The separator is not included in the returned String array. Adjacent separators are treated as separators for empty tokens. Adjacent separators are treated as one separator.
A null
input String returns null
.
A null
separatorChars splits on whitespace.
If more than max
delimited substrings are found, the last
returned string includes all characters after the first max - 1
returned strings (including separator characters).
StringUtils.splitPreserveAllTokens(null, *, *) = null StringUtils.splitPreserveAllTokens("", *, *) = [] StringUtils.splitPreserveAllTokens("ab de fg", null, 0) = ["ab", "cd", "ef"] StringUtils.splitPreserveAllTokens("ab de fg", null, 0) = ["ab", "cd", "ef"] StringUtils.splitPreserveAllTokens("ab:cd:ef", ":", 0) = ["ab", "cd", "ef"] StringUtils.splitPreserveAllTokens("ab:cd:ef", ":", 2) = ["ab", "cd:ef"] StringUtils.splitPreserveAllTokens("ab de fg", null, 2) = ["ab", " de fg"] StringUtils.splitPreserveAllTokens("ab de fg", null, 3) = ["ab", "", " de fg"] StringUtils.splitPreserveAllTokens("ab de fg", null, 4) = ["ab", "", "", "de fg"]
str
- the String to parse, may be null
separatorChars
- the characters used as the delimiters,
null
splits on whitespacemax
- the maximum number of elements to include in the
array. A zero or negative value implies no limitnull
if null String inputpublic static String join(Object[] array)
Joins the elements of the provided array into a single String containing the provided list of elements.
No separator is added to the joined String. Null objects or empty strings within the array are represented by empty strings.
StringUtils.join(null) = null StringUtils.join([]) = "" StringUtils.join([null]) = "" StringUtils.join(["a", "b", "c"]) = "abc" StringUtils.join([null, "", "a"]) = "a"
array
- the array of values to join together, may be nullnull
if null array inputpublic static String join(Object[] array, char separator)
Joins the elements of the provided array into a single String containing the provided list of elements.
No delimiter is added before or after the list. Null objects or empty strings within the array are represented by empty strings.
StringUtils.join(null, *) = null StringUtils.join([], *) = "" StringUtils.join([null], *) = "" StringUtils.join(["a", "b", "c"], ';') = "a;b;c" StringUtils.join(["a", "b", "c"], null) = "abc" StringUtils.join([null, "", "a"], ';') = ";;a"
array
- the array of values to join together, may be nullseparator
- the separator character to usenull
if null array inputpublic static String join(Object[] array, String separator)
Joins the elements of the provided array into a single String containing the provided list of elements.
No delimiter is added before or after the list.
A null
separator is the same as an empty String ("").
Null objects or empty strings within the array are represented by
empty strings.
StringUtils.join(null, *) = null StringUtils.join([], *) = "" StringUtils.join([null], *) = "" StringUtils.join(["a", "b", "c"], "--") = "a--b--c" StringUtils.join(["a", "b", "c"], null) = "abc" StringUtils.join(["a", "b", "c"], "") = "abc" StringUtils.join([null, "", "a"], ',') = ",,a"
array
- the array of values to join together, may be nullseparator
- the separator character to use, null treated as ""null
if null array inputpublic static String join(Iterator iterator, char separator)
Joins the elements of the provided Iterator
into
a single String containing the provided elements.
No delimiter is added before or after the list. Null objects or empty strings within the iteration are represented by empty strings.
See the examples here: join(Object[],char)
.
iterator
- the Iterator
of values to join together, may be nullseparator
- the separator character to usenull
if null iterator inputpublic static String join(Iterator iterator, String separator)
Joins the elements of the provided Iterator
into
a single String containing the provided elements.
No delimiter is added before or after the list.
A null
separator is the same as an empty String ("").
See the examples here: join(Object[],String)
.
iterator
- the Iterator
of values to join together, may be nullseparator
- the separator character to use, null treated as ""null
if null iterator inputpublic static String defaultString(String str)
Returns either the passed in String,
or if the String is null
, an empty String ("").
StringUtils.defaultString(null) = "" StringUtils.defaultString("") = "" StringUtils.defaultString("bat") = "bat"
str
- the String to check, may be nullnull
String.valueOf(Object)
public static String defaultString(String str, String defaultStr)
Returns either the passed in String, or if the String is
null
, the value of defaultStr
.
StringUtils.defaultString(null, "NULL") = "NULL" StringUtils.defaultString("", "NULL") = "" StringUtils.defaultString("bat", "NULL") = "bat"
str
- the String to check, may be nulldefaultStr
- the default String to return
if the input is null
, may be nullnull
String.valueOf(Object)
public static String defaultIfEmpty(String str, String defaultStr)
Returns either the passed in String, or if the String is
empty or null
, the value of defaultStr
.
StringUtils.defaultIfEmpty(null, "NULL") = "NULL" StringUtils.defaultIfEmpty("", "NULL") = "NULL" StringUtils.defaultIfEmpty("bat", "NULL") = "bat"
str
- the String to check, may be nulldefaultStr
- the default String to return
if the input is empty ("") or null
, may be nullpublic static String capitalize(String str)
Capitalizes a String changing the first letter to title case as
per Character.toTitleCase(char)
. No other letters are changed.
null
input String returns null
.
StringUtils.capitalize(null) = null StringUtils.capitalize("") = "" StringUtils.capitalize("cat") = "Cat" StringUtils.capitalize("cAt") = "CAt"
str
- the String to capitalize, may be nullnull
if null String inputpublic static boolean contains(String str, char searchChar)
Checks if String contains a search character, handling null
.
This method uses String.indexOf(int)
.
A null
or empty ("") String will return false
.
StringUtils.contains(null, *) = false StringUtils.contains("", *) = false StringUtils.contains("abc", 'a') = true StringUtils.contains("abc", 'z') = false
str
- the String to check, may be nullsearchChar
- the character to findnull
string inputpublic static boolean contains(String str, String searchStr)
Checks if String contains a search String, handling null
.
This method uses String.indexOf(int)
.
A null
String will return false
.
StringUtils.contains(null, *) = false StringUtils.contains(*, null) = false StringUtils.contains("", "") = true StringUtils.contains("abc", "") = true StringUtils.contains("abc", "a") = true StringUtils.contains("abc", "z") = false
str
- the String to check, may be nullsearchStr
- the String to find, may be nullnull
string inputpublic static boolean equals(Object object1, Object object2)
Compares two objects for equality, where either one or both
objects may be null
.
ObjectUtils.equals(null, null) = true ObjectUtils.equals(null, "") = false ObjectUtils.equals("", null) = false ObjectUtils.equals("", "") = true ObjectUtils.equals(Boolean.TRUE, null) = false ObjectUtils.equals(Boolean.TRUE, "true") = false ObjectUtils.equals(Boolean.TRUE, Boolean.TRUE) = true ObjectUtils.equals(Boolean.TRUE, Boolean.FALSE) = false
object1
- the first object, may be null
object2
- the second object, may be null
true
if the values of both objects are the samepublic static String stripLastSlashIfExists(String input)
input
- public static String stripStart(String str, String stripChars)
Strips any of a set of characters from the start of a String.
A null
input String returns null
.
An empty string ("") input returns the empty string.
If the stripChars String is null
, whitespace is
stripped as defined by Character.isWhitespace(char)
.
StringUtils.stripStart(null, *) = null StringUtils.stripStart("", *) = "" StringUtils.stripStart("abc", "") = "abc" StringUtils.stripStart("abc", null) = "abc" StringUtils.stripStart(" abc", null) = "abc" StringUtils.stripStart("abc ", null) = "abc " StringUtils.stripStart(" abc ", null) = "abc " StringUtils.stripStart("yxabc ", "xyz") = "abc "
str
- the String to remove characters from, may be nullstripChars
- the characters to remove, null treated as whitespacenull
if null String inputpublic static String stripEnd(String str, String stripChars)
Strips any of a set of characters from the end of a String.
A null
input String returns null
.
An empty string ("") input returns the empty string.
If the stripChars String is null
, whitespace is
stripped as defined by Character.isWhitespace(char)
.
StringUtils.stripEnd(null, *) = null StringUtils.stripEnd("", *) = "" StringUtils.stripEnd("abc", "") = "abc" StringUtils.stripEnd("abc", null) = "abc" StringUtils.stripEnd(" abc", null) = " abc" StringUtils.stripEnd("abc ", null) = "abc" StringUtils.stripEnd(" abc ", null) = " abc" StringUtils.stripEnd(" abcyx", "xyz") = " abc"
str
- the String to remove characters from, may be nullstripChars
- the characters to remove, null treated as whitespacenull
if null String inputpublic static String repeat(String str, int repeat)
Repeat a String repeat
times to form a
new String.
StringUtils.repeat(null, 2) = null StringUtils.repeat("", 0) = "" StringUtils.repeat("", 2) = "" StringUtils.repeat("a", 3) = "aaa" StringUtils.repeat("ab", 2) = "abab" StringUtils.repeat("a", -2) = ""
str
- the String to repeat, may be nullrepeat
- number of times to repeat str, negative treated as zeronull
if null String inputpublic static String rightPad(String str, int size)
Right pad a String with spaces (' ').
The String is padded to the size of size
.
StringUtils.rightPad(null, *) = null StringUtils.rightPad("", 3) = " " StringUtils.rightPad("bat", 3) = "bat" StringUtils.rightPad("bat", 5) = "bat " StringUtils.rightPad("bat", 1) = "bat" StringUtils.rightPad("bat", -1) = "bat"
str
- the String to pad out, may be nullsize
- the size to pad tonull
if null String inputpublic static String rightPad(String str, int size, char padChar)
Right pad a String with a specified character.
The String is padded to the size of size
.
StringUtils.rightPad(null, *, *) = null StringUtils.rightPad("", 3, 'z') = "zzz" StringUtils.rightPad("bat", 3, 'z') = "bat" StringUtils.rightPad("bat", 5, 'z') = "batzz" StringUtils.rightPad("bat", 1, 'z') = "bat" StringUtils.rightPad("bat", -1, 'z') = "bat"
str
- the String to pad out, may be nullsize
- the size to pad topadChar
- the character to pad withnull
if null String inputpublic static String rightPad(String str, int size, String padStr)
Right pad a String with a specified String.
The String is padded to the size of size
.
StringUtils.rightPad(null, *, *) = null StringUtils.rightPad("", 3, "z") = "zzz" StringUtils.rightPad("bat", 3, "yz") = "bat" StringUtils.rightPad("bat", 5, "yz") = "batyz" StringUtils.rightPad("bat", 8, "yz") = "batyzyzy" StringUtils.rightPad("bat", 1, "yz") = "bat" StringUtils.rightPad("bat", -1, "yz") = "bat" StringUtils.rightPad("bat", 5, null) = "bat " StringUtils.rightPad("bat", 5, "") = "bat "
str
- the String to pad out, may be nullsize
- the size to pad topadStr
- the String to pad with, null or empty treated as single spacenull
if null String inputpublic static String leftPad(String str, int size)
Left pad a String with spaces (' ').
The String is padded to the size of size
.
StringUtils.leftPad(null, *) = null StringUtils.leftPad("", 3) = " " StringUtils.leftPad("bat", 3) = "bat" StringUtils.leftPad("bat", 5) = " bat" StringUtils.leftPad("bat", 1) = "bat" StringUtils.leftPad("bat", -1) = "bat"
str
- the String to pad out, may be nullsize
- the size to pad tonull
if null String inputpublic static String leftPad(String str, int size, char padChar)
Left pad a String with a specified character.
Pad to a size of size
.
StringUtils.leftPad(null, *, *) = null StringUtils.leftPad("", 3, 'z') = "zzz" StringUtils.leftPad("bat", 3, 'z') = "bat" StringUtils.leftPad("bat", 5, 'z') = "zzbat" StringUtils.leftPad("bat", 1, 'z') = "bat" StringUtils.leftPad("bat", -1, 'z') = "bat"
str
- the String to pad out, may be nullsize
- the size to pad topadChar
- the character to pad withnull
if null String inputpublic static String leftPad(String str, int size, String padStr)
Left pad a String with a specified String.
Pad to a size of size
.
StringUtils.leftPad(null, *, *) = null StringUtils.leftPad("", 3, "z") = "zzz" StringUtils.leftPad("bat", 3, "yz") = "bat" StringUtils.leftPad("bat", 5, "yz") = "yzbat" StringUtils.leftPad("bat", 8, "yz") = "yzyzybat" StringUtils.leftPad("bat", 1, "yz") = "bat" StringUtils.leftPad("bat", -1, "yz") = "bat" StringUtils.leftPad("bat", 5, null) = " bat" StringUtils.leftPad("bat", 5, "") = " bat"
str
- the String to pad out, may be nullsize
- the size to pad topadStr
- the String to pad with, null or empty treated as single spacenull
if null String inputpublic static String substringBefore(String str, String separator)
Gets the substring before the first occurrence of a separator. The separator is not returned.
A null
string input will return null
.
An empty ("") string input will return the empty string.
A null
separator will return the input string.
StringUtils.substringBefore(null, *) = null StringUtils.substringBefore("", *) = "" StringUtils.substringBefore("abc", "a") = "" StringUtils.substringBefore("abcba", "b") = "a" StringUtils.substringBefore("abc", "c") = "ab" StringUtils.substringBefore("abc", "d") = "abc" StringUtils.substringBefore("abc", "") = "" StringUtils.substringBefore("abc", null) = "abc"
str
- the String to get a substring from, may be nullseparator
- the String to search for, may be nullnull
if null String inputpublic static String substringAfter(String str, String separator)
Gets the substring after the first occurrence of a separator. The separator is not returned.
A null
string input will return null
.
An empty ("") string input will return the empty string.
A null
separator will return the empty string if the
input string is not null
.
StringUtils.substringAfter(null, *) = null StringUtils.substringAfter("", *) = "" StringUtils.substringAfter(*, null) = "" StringUtils.substringAfter("abc", "a") = "bc" StringUtils.substringAfter("abcba", "b") = "cba" StringUtils.substringAfter("abc", "c") = "" StringUtils.substringAfter("abc", "d") = "" StringUtils.substringAfter("abc", "") = "abc"
str
- the String to get a substring from, may be nullseparator
- the String to search for, may be nullnull
if null String inputpublic static String substringBeforeLast(String str, String separator)
Gets the substring before the last occurrence of a separator. The separator is not returned.
A null
string input will return null
.
An empty ("") string input will return the empty string.
An empty or null
separator will return the input string.
StringUtils.substringBeforeLast(null, *) = null StringUtils.substringBeforeLast("", *) = "" StringUtils.substringBeforeLast("abcba", "b") = "abc" StringUtils.substringBeforeLast("abc", "c") = "ab" StringUtils.substringBeforeLast("a", "a") = "" StringUtils.substringBeforeLast("a", "z") = "a" StringUtils.substringBeforeLast("a", null) = "a" StringUtils.substringBeforeLast("a", "") = "a"
str
- the String to get a substring from, may be nullseparator
- the String to search for, may be nullnull
if null String inputpublic static String substringAfterLast(String str, String separator)
Gets the substring after the last occurrence of a separator. The separator is not returned.
A null
string input will return null
.
An empty ("") string input will return the empty string.
An empty or null
separator will return the empty string if
the input string is not null
.
StringUtils.substringAfterLast(null, *) = null StringUtils.substringAfterLast("", *) = "" StringUtils.substringAfterLast(*, "") = "" StringUtils.substringAfterLast(*, null) = "" StringUtils.substringAfterLast("abc", "a") = "bc" StringUtils.substringAfterLast("abcba", "b") = "a" StringUtils.substringAfterLast("abc", "c") = "" StringUtils.substringAfterLast("a", "a") = "" StringUtils.substringAfterLast("a", "z") = ""
str
- the String to get a substring from, may be nullseparator
- the String to search for, may be nullnull
if null String inputpublic static <T> T listPopOne(List<T> list)
T
- list
- is the container of objects to get the first of.public static <T> T setPopOne(Set<T> set)
T
- set
- is the container of objects to get the first of.public static <T> T collectionPopOne(Collection<T> collection, boolean exceptionIfMoreThanOne)
T
- collection
- is the container of objects to get the first of.exceptionIfMoreThanOne
- will throw exception if there is more than one item in listpublic static String xmlEscape(String input, boolean isEscape)
input
- is the XML to convertisEscape
- true to escape chars, false to unescapepublic static boolean appendIfNotBlank(StringBuilder result, Object theStringOrArrayOrList)
result
- to append to
add a prefix and suffix (if not null)theStringOrArrayOrList
- is a string, array, list, or set of stringspublic static String appendIfNotBlankString(String string, String separator, String suffix)
append a string to another string if both not blank, with separator. trim to empty everything
string
- separator
- suffix
- public static boolean appendIfNotBlank(StringBuilder result, String prefix, Object theStringOrArrayOrList)
result
- to append toprefix
- theStringOrArrayOrList
- is a string, array, list, or set of stringspublic static boolean appendIfNotBlank(StringBuilder result, String prefix, Object theStringOrArrayOrList, String suffix)
result
- to append to, assumed to be not nullprefix
- theStringOrArrayOrList
- is a string, array, list, or set of stringssuffix
- public static boolean appendIfNotBlank(StringBuilder result, String prefix, String prefixIfNotBlank, Object theStringOrArrayOrList, String suffix)
result
- to append to, assumed to be not nullprefix
- prepend this prefix always (when a result not empty). Will be after the other prefixprefixIfNotBlank
- prepend this prefix if the result is not emptytheStringOrArrayOrList
- is a string, array, list, or set of stringssuffix
- public static boolean appendIfNotEmpty(StringBuilder result, Object theStringOrArrayOrList)
result
- to append to
add a prefix and suffix (if not null)theStringOrArrayOrList
- is a string, array, list, or set of stringspublic static boolean appendIfNotEmpty(StringBuilder result, String prefix, Object theStringOrArrayOrList)
result
- to append toprefix
- theStringOrArrayOrList
- is a string, array, list, or set of stringspublic static boolean appendIfNotEmpty(StringBuilder result, String prefix, Object theStringOrArrayOrList, String suffix)
result
- to append to, assumed to be not nullprefix
- theStringOrArrayOrList
- is a string, array, list, or set of stringssuffix
- public static boolean appendIfNotEmpty(StringBuilder result, String prefix, String prefixIfNotEmpty, Object theStringOrArrayOrList, String suffix)
result
- to append to, assumed to be not nullprefix
- prepend this prefix always (when a result not empty). Will be after the other prefixprefixIfNotEmpty
- prepend this prefix if the result is not emptytheStringOrArrayOrList
- is a string, array, list, or set of stringssuffix
- public static int indexOf(Object[] array, Object objectToFind)
Find the index of the given object in the array.
This method returns -1
if null
array input.
array
- the array to search through for the object, may be null
objectToFind
- the object to find, may be null
-1
if not found or null
array inputpublic static boolean contains(Object[] array, Object objectToFind)
Checks if the object is in the given array.
The method returns false
if a null
array is passed in.
array
- the array to search throughobjectToFind
- the object to findtrue
if the array contains the objectpublic static int indexOf(Object[] array, Object objectToFind, int startIndex)
Find the index of the given object in the array starting at the given index.
This method returns -1
if null
array input.
A negative startIndex is treated as zero. A startIndex larger than the array
length will return -1
.
array
- the array to search through for the object, may be null
objectToFind
- the object to find, may be null
startIndex
- the index to start searching at-1
if not found or null
array inputpublic static <T> T arrayPopOne(T[] array)
T
- array
- is the container of objects to get the first of.public static String dateToString(Date date)
date
- public static Date stringToDate(String dateString)
dateString
- public static Long getMaxLongValue(Long... values)
values
- public static Long getMinLongValue(Long... values)
values
- public static boolean ipOnNetwork(String ipString, String networkIpString, int mask)
ipString
- is the ip address to checknetworkIpString
- is the ip address of the networkmask
- is the length of the mask (0-32)public static boolean ipOnNetworks(String ipString, String networkIpStrings)
ipString
- is the ip address to checknetworkIpStrings
- are the ip addresses of the networks, e.g. 1.2.3.4/12, 2.3.4.5/24public static int ipReadyForAnd(int ip, int maskLength)
ip
- intmaskLength
- intpublic static int ipInt(String ip)
ip
- Stringpublic static String getFullStackTrace(Throwable throwable)
A way to get the entire nested stack-trace of an throwable.
throwable
- the Throwable
to be examinedpublic static Object get(Object arrayOrCollection, int index)
arrayOrCollection
- index
- public static Throwable[] getThrowables(Throwable throwable)
Returns the list of Throwable
objects in the
exception chain.
A throwable without cause will return an array containing
one element - the input throwable.
A throwable with one cause will return an array containing
two elements. - the input throwable and the cause throwable.
A null
throwable will return an array size zero.
throwable
- the throwable to inspect, may be nullpublic static boolean isThrowableNested()
Checks if the Throwable class has a getCause
method.
This is true for JDK 1.4 and above.
public static boolean isNestedThrowable(Throwable throwable)
Checks whether this Throwable
class can store a cause.
This method does not check whether it actually does store a cause.
throwable
- the Throwable
to examine, may be nulltrue
if nested otherwise false
public static Throwable getCause(Throwable throwable)
Introspects the Throwable
to obtain the cause.
The method searches for methods with specific names that return a
Throwable
object. This will pick up most wrapping exceptions,
including those from JDK 1.4, and
The default list searched for are:
getCause()
getNextException()
getTargetException()
getException()
getSourceException()
getRootCause()
getCausedByException()
getNested()
In the absence of any such method, the object is inspected for a
detail
field assignable to a Throwable
.
If none of the above is found, returns null
.
throwable
- the throwable to introspect for a cause, may be nullThrowable
,
null
if none found or null throwable inputpublic static Throwable getCause(Throwable throwable, String[] methodNames)
Introspects the Throwable
to obtain the cause.
A null
set of method names means use the default set.
A null
in the set of method names will be ignored.
throwable
- the throwable to introspect for a cause, may be nullmethodNames
- the method names, null treated as default setThrowable
,
null
if none found or null throwable inputCopyright © 2016 Internet2. All rights reserved.