google 的guava 学习 基本工具类

Guava 是 Google 开发的一个 Java 核心库,它提供了一系列工具类,用于简化 Java 编程中的常见任务。以下是 PreconditionsVerify 两个工具类的使用示例:

Preconditions 类

Preconditions 类提供了一组静态方法,用于在代码中插入检查,确保方法的前提条件得到满足。如果条件不满足,它会抛出 IllegalArgumentException 或其他类型的异常。

java 复制代码
import com.google.common.base.Preconditions;

public class Example {
    public static void main(String[] args) {
        // 检查对象非空
        String str = "Hello, Guava!";
        Preconditions.checkNotNull(str, "The string should not be null.");

        // 检查条件
        Preconditions.checkArgument(str.length() > 0, "The string should not be empty.");
        
        // 检查状态
        boolean isTrue = true;
        Preconditions.checkState(isTrue, "This should be true.");
    }
}

Verify 类

Guava 提供了 Verify 工具类的第三方库是 truth。以下是 truth 库中的 Verify 类的使用示例:

首先,您需要添加 truth 库到您的项目中。如果您使用 Maven,可以在 pom.xml 文件中添加以下依赖:

xml 复制代码
<dependency>
    <groupId>com.google.truth</groupId>
    <artifactId>truth</artifactId>
    <version>1.1.3</version>
    <scope>test</scope>
</dependency>

然后,您可以使用 Verify 类来验证对象状态:

java 复制代码
import com.google.common.truth.Truth;
import com.google.common.truth.Verify;

public class Example {
    public static void main(String[] args) {
        Verify.verify("Hello, Guava!").isNotNull();
        Verify.verify("Hello, Guava!").isNotEmpty();
    }
}

请注意,Verify 类主要用于测试中,而不是在生产代码中。它提供了一种简洁的方式来验证测试中的条件和状态。在生产代码中,您通常会使用 Preconditions 或其他异常处理机制来确保代码的正确性。

相关推荐
M78佐菲6 小时前
Linux学习笔记:TCP协议
linux·笔记·学习·tcp/ip·算法
yi.Ist7 小时前
数据定义语言-DDL操作
数据库·学习·mysql·oracle·大海豚
骐骥111 小时前
学习:javaScriptProxy和registerJavaScriptProxy有什么区别,能注册多少个对象
学习·鸿蒙
Huathy-雨落江南,浮生若梦11 小时前
Caddy 学习笔记 - 反向代理与 IP 封禁
笔记·学习·tcp/ip
m4Rk_13 小时前
【论文阅读】Agent 记忆机制(57):MemSearch-o1——从查询词元生长证据,重组 Deep Search 记忆路径
论文阅读·人工智能·学习·开源·github
闭月之泪舞13 小时前
C++编程学习
c++·学习
网安蟹佬霸14 小时前
2026网络安全每日学习计划:每天学多久?学什么?怎么安排?照着做就行!
网络·学习·安全·web安全·学习路线·网安
一条破秋裤15 小时前
TIM 输入捕获与 PWMI:从边沿到频率、占空比
笔记·stm32·学习
2601_9499506315 小时前
考研英语资料太散?用小程序把真题、词汇和错题放到一起
人工智能·学习·考研·小程序·刷题·小程序推荐
熊猫钓鱼>_>15 小时前
鸿蒙AI Agent新范式:从“对话式辅助”到“工程化代理”的Harness架构实战解析
人工智能·笔记·学习·华为·架构·harmonyos