1.作用
Assert :“断言”,它断定某一个实际的运行值和预期想一样,否则就抛出异常
2.使代码更简介
数据合法性检查:
if (message== null || message.equls("")) {
throw new IllegalArgumentException(“输入信息错误!”);
}
使用Assert简化后:
Assert.hasText((message, “输入信息错误!”);
3.常用方法介绍
1.Assert.notNull(Object object, “object is required”) - 对象非空
当 object 为 null 时抛出异常,notNull(Object object, String message) 方法允许您通过 message 定制异常信息。和 notNull() 方法断言规则相反的方法是 isNull(Object object)/isNull(Object object, String message),它要求入参一定是 null;
2.Assert.isTrue(Object object, “object must be true”) - 对象必须为true
当 expression 不为 true 抛出异常;
3.Assert.notEmpty(Collection collection, “collection must not be empty”) - 集合非空
当集合未包含元素时抛出异常。
notEmpty(Map map) / notEmpty(Map map, String message) 和 notEmpty(Object[] array, String message) / notEmpty(Object[] array, String message) 分别对 Map 和 Object[] 类型的入参进行判断;
4.Assert.hasLength(String text, “text must be specified”) - 字符不为null且字符长度不为0
当 text 为 null 或长度为 0 时抛出异常;
5.Assert.hasText(String text, “text must not be empty”) - text 不为null且必须至少包含一个非空格的字符
text 不能为 null 且必须至少包含一个非空格的字符,否则抛出异常;
6.Assert.isInstanceOf(Class clazz, Object obj, “clazz must be of type [clazz]”) - obj必须能被正确造型成为clazz 指定的类
如果 obj 不能被正确造型为 clazz 指定的类将抛出异常;
7.**isAssignable(Class superType, Class subType) / isAssignable(Class superType, Class subType, String message) **
subType 必须可以按类型匹配于 superType,否则将抛出异常;