or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

collection-operations.mdcompression-operations.mddate-time-operations.mdfile-io-operations.mdindex.mdobject-operations.mdrandom-operations.mdstring-operations.mdtype-conversion.mdurl-operations.mdxml-operations.md
tile.json

tessl/maven-cn-hutool--hutool-core

Comprehensive Java utility library providing collections, strings, beans, dates, I/O, and numerous other utility functions.

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
mavenpkg:maven/cn.hutool/hutool-core@5.8.x

To install, run

npx @tessl/cli install tessl/maven-cn-hutool--hutool-core@5.8.0

index.mddocs/

Hutool Core

Hutool Core is a comprehensive Java utility library providing extensive functionality for collections, strings, beans, dates, I/O operations, and numerous other common programming tasks. It offers over 90 utility classes with thousands of static methods designed to simplify Java development with null-safe operations, type conversions, and practical helper functions.

Package Information

  • Package Name: cn.hutool:hutool-core
  • Package Type: maven
  • Language: Java
  • Installation: Add to Maven pom.xml:
    <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-core</artifactId>
        <version>5.8.40</version>
    </dependency>

Core Imports

import cn.hutool.core.util.StrUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.convert.Convert;

Basic Usage

import cn.hutool.core.util.StrUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;

// String utilities
boolean isEmpty = StrUtil.isBlank("  "); // true
String formatted = StrUtil.format("Hello {}", "World"); // "Hello World"

// Collection utilities
List<String> list = CollUtil.newArrayList("a", "b", "c");
boolean hasItems = CollUtil.isNotEmpty(list); // true

// Date utilities
String dateStr = DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss");
Date parsed = DateUtil.parse("2023-01-15", "yyyy-MM-dd");

Architecture

Hutool Core is organized into distinct functional packages:

  • Static Utility Pattern: All functionality exposed through static methods in *Util classes
  • Null-Safe Operations: Extensive null checking throughout all utilities
  • Type Safety: Generic type support where applicable with safe casting utilities
  • Builder Support: Builder classes for complex object construction (StrBuilder, etc.)
  • Converter System: Unified type conversion framework with extensible converters
  • Multi-Language Support: Special utilities for Chinese-specific functionality (ID cards, phone numbers)

Capabilities

String Operations

Comprehensive string manipulation, formatting, conversion, and validation utilities.

public class StrUtil {
    public static boolean isBlank(CharSequence str);
    public static boolean isEmpty(CharSequence str);
    public static String format(String template, Object... params);
    public static String utf8Str(Object obj);
}

String Operations

Collection Operations

Utilities for creating, manipulating, and transforming Java collections with null-safe operations.

public class CollUtil {
    public static <T> boolean isEmpty(Collection<T> collection);
    public static <T> boolean isNotEmpty(Collection<T> collection);
    public static <T> List<T> newArrayList(T... values);
    public static <T> Collection<T> union(Collection<T> coll1, Collection<T> coll2);
}

Collection Operations

Date and Time

Date parsing, formatting, manipulation, and calendar operations with support for both legacy Date API and Java 8+ time API.

public class DateUtil {
    public static String format(Date date, String format);
    public static Date parse(String dateStr, String format);
    public static long between(Date beginDate, Date endDate, DateUnit unit);
}

Date and Time Operations

Type Conversion

Universal type conversion system supporting conversion between all common Java types.

public class Convert {
    public static <T> T convert(Class<T> type, Object value);
    public static String toStr(Object value);
    public static Integer toInt(Object value);
    public static Boolean toBool(Object value);
}

Type Conversion

File and I/O Operations

File operations, stream handling, resource management, and NIO utilities.

public class FileUtil {
    public static String readUtf8String(File file);
    public static void writeUtf8String(String content, File file);
    public static boolean exist(String path);
    public static File copy(File src, File dest, boolean isOverride);
}

public class IoUtil {
    public static long copy(InputStream in, OutputStream out);
    public static void close(Closeable closeable);
    public static String read(InputStream in, Charset charset);
}

File and I/O Operations

Random Operations

Random number generation, string generation, and collection element selection utilities.

public class RandomUtil {
    public static boolean randomBoolean();
    public static int randomInt(int minInclude, int maxExclude);
    public static String randomString(int length);
    public static <T> T randomEle(List<T> list);
}

Random Operations

XML Processing

XML parsing, manipulation, and serialization utilities.

public class XmlUtil {
    public static Document readXML(String pathOrContent);
    public static String toStr(Node doc, boolean isPretty);
    public static Element getElementByXPath(Document doc, String expression);
    public static String escape(String string);
}

XML Operations

Compression Utilities

ZIP file compression, decompression, and archive manipulation utilities.

public class ZipUtil {
    public static File zip(String srcPath, String zipPath);
    public static File unzip(String zipFilePath, String outFileDir);
    public static byte[] gzip(String content, String charset);
    public static String unGzip(byte[] buf, String charset);
}

Compression Operations

URL Processing

URL creation, parsing, encoding, and manipulation utilities.

public class URLUtil {
    public static URL url(String url);
    public static String decode(String url);
    public static String normalize(String url);
    public static InputStream getStream(URL url);
}

URL Operations

Object Operations

Object comparison, validation, cloning, and manipulation utilities.

public class ObjectUtil {
    public static boolean equals(Object obj1, Object obj2);
    public static boolean isEmpty(Object obj);
    public static <T> T defaultIfNull(T object, T defaultValue);
    public static <T> T clone(T obj);
}

Object Operations

Additional Utilities

Other specialized utility classes available in Hutool Core:

  • BeanUtil: JavaBean manipulation, property copying, and object introspection
  • ArrayUtil: Array creation, manipulation, and conversion utilities with null-safe operations
  • NumberUtil: Number parsing, formatting, mathematical operations, and validation utilities
  • ReflectUtil: Reflection utilities for class introspection, method invocation, and field access
  • ReUtil: Regular expression utilities for pattern matching, replacement, and extraction
  • NetUtil: Network utilities for IP address handling, URL operations, and network connectivity
  • ImgUtil: Image processing utilities for reading, writing, scaling, and format conversion
  • HashUtil/HexUtil: Hash generation, encoding/decoding, and basic cryptographic utilities
  • IdcardUtil/PhoneUtil: Specialized utilities for Chinese development (ID cards, phone numbers)

Common Types

// Date unit enumeration
public enum DateUnit {
    MS, SECOND, MINUTE, HOUR, DAY, WEEK
}

// Charset utilities
public class CharsetUtil {
    public static final Charset UTF_8 = StandardCharsets.UTF_8;
    public static final Charset GBK = Charset.forName("GBK");
}

// String pool constants
public interface StrPool {
    String EMPTY = "";
    String NULL = "null";
    String SPACE = " ";
    String TAB = "\t";
    String DOT = ".";
    String SLASH = "/";
    String BACKSLASH = "\\";
}