Java基础之断言

Posted coco_xu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础之断言相关的知识,希望对你有一定的参考价值。

  断言是在Java 1.4中引入的。它能让你验证假设。如果断言失败(即返回false),就会抛出AssertionError(如果启用断言)。

什么时候使用断言?

  断言不应该用于验证输入数据到一个public方法或命令行参数。IllegalArgumentException会是一个更好的选择。在public方法中,只用断言来检查它们根本不应该发生的情况。

import java.util.Collection;
import java.util.Map;

import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang.StringUtils;

/**
 * 断言扩展
 * 
 * @ClassName: Assert
 * @author coco.xu*/
@SuppressWarnings("rawtypes")
public class Assert {

    public static void hasText(Long text, String message) {
        if (text == null || text == 0)
            throw new IllegalArgumentException(message);
        else
            return;
    }

    public static void hasText(Integer text, String message) {
        if (text == null || text == 0)
            throw new IllegalArgumentException(message);
        else
            return;
    }

    public static void hasText(String text, String message) {
        org.springframework.util.Assert.hasText(text, message);
    }

    public static void notNull(Object obj, String message) {
        if (obj == null) {
            throw new IllegalArgumentException(message);
        }
    }
    
    public static void notEmpty(Collection obj, String message) {
        if (CollectionUtils.isEmpty(obj)) {
            throw new IllegalArgumentException(message);
        }
    }
    
    public static void notEmpty(Map obj, String message) {
        if (MapUtils.isEmpty(obj)) {
            throw new IllegalArgumentException(message);
        }
    }

    public static void hasText(String text) {
        org.springframework.util.Assert
                .hasText(
                        text,
                        "[Assertion failed] - this String argument must have text; it must not be null, empty, or blank");
    }
    
    public static void notEmpty(String text,String message)
    {
        if(StringUtils.isEmpty(text))
        {
            throw new IllegalArgumentException(message);
        }
    }

}

 

以上是关于Java基础之断言的主要内容,如果未能解决你的问题,请参考以下文章

java基础知识--断言

jmeter之beanshell断言---数据处理

Java基础之方法的调用重载以及简单的递归

postman添加断言

Java基础-异常断言

Java笔记:断言