A cornucopia of useful utility classes.
Class
Description
Base32
Case-insensitive Base32 encoding and decoding
Base58
Bitcoin-style Base58 encoding and decoding
Base64
RFC 2045 Base64 encoding and decoding
Binary
Binary string to byte array conversion
Hex
Hexadecimal string to byte array conversion
Class
Description
Duration
Parses and manipulates time durations like 3 hours and 12 minutes
Size
Parses and manipulates data sizes like 256mb
SizeUnit
Enum for data size unit conversion (bytes through terabytes)
Bytes
Accumulates and compacts byte values across size units
TimeUtils
Converts milliseconds to human-readable time strings
Class
Description
IO
Read, write, and copy streams, files, and channels
Files
File filtering, walking, deletion, and iteration
Zips
Extract ZIP and JAR files to a directory
Archive
In-memory JAR-like structure using lambdas for lazy byte loading
Pipe
Pipes an InputStream to an OutputStream as a Runnable/Future
JarLocation
Finds the JAR file on disk that contains a given class
Mvn
Locates Maven artifacts in the local repository by coordinates
Strongly-Typed Directory Proxies
Define an interface whose method names mirror a directory structure; get back a proxy that returns File or Path references with compile-time safety.
Class
Description
Dir
java.io.File-based directory proxy
Dir (paths)
java.nio.file.Path-based directory proxy
Paths
Utilities for walking and filtering Path trees
Supporting annotations: @Filter , @Walk , @Mkdir , @Mkdirs , @Name , @Parent
Collections and Iteration
Class
Description
FilteredIterable
Iterable wrapper that filters elements with a predicate
FilteredIterator
Iterator wrapper that filters elements with a predicate
CompositeIterable
Chains multiple iterables into a single sequence
CompositeIterator
Chains multiple iterators into a single sequence
AbstractIterator
Base class for custom iterators with an advance() pattern
Suppliers
Converts Suppliers into lazy Iterators and Streams
ObjectMap
Exposes an object's getters and fields as a Map<String, Object>
Class
Description
Generics
Extracts generic type parameters from fields, methods, and parameters
Parameter
Represents a method parameter with its annotations and types
Reflection
Iterates over methods and parameters
Classes
Maps between primitive types and their wrapper classes
SetAccessible
PrivilegedAction for setting accessibility on reflected members
StackTraceElements
Utilities for working with stack traces
Class
Description
Converter
Converts between Java types using PropertyEditors, constructors, and static factory methods
AbstractConverter
Base class for PropertyEditor implementations
Editors
Finds and registers PropertyEditor instances by type
DateEditor
PropertyEditor for parsing strings into Date objects
PathEditor
PropertyEditor for java.nio.file.Path
CharacterEditor
PropertyEditor for Character
Class
Description
Join
Joins collections and arrays with a delimiter
StringTemplate
{placeholder} string replacement with customizable delimiters
Strings
Case conversion utilities
Escapes
Unescapes backslash sequences like \n and \t
Formats
Helpers for difficult-to-remember Formatter conversions
PrintString
PrintStream that writes to an internal string buffer
Class
Description
Ints
Convert integers to and from byte arrays and hex
Longs
Convert longs to and from byte arrays
Class
Description
XxHash64
64-bit xxHash non-cryptographic hash
XxHash32
32-bit xxHash non-cryptographic hash
Slice
Low-level byte buffer for efficient memory access
Slices
Slice allocation and resizing
SizeOf
Calculates memory size of Java objects using Unsafe
Class
Description
Options
Strongly-typed Properties wrapper with enum and collection support
SuperProperties
Extended Properties with comments, attributes, and case-insensitive lookup
Class
Description
Version
Comparable version number parsing
Futures
Combines multiple Futures into a single Future<List>