JAVA中断⾔asrt和断⾔⼯具类AsrtUtil的⽤法和逻辑
1.断⾔asrt()的⽤法和语法
asrt(条件语句),如果条件语句为真,继续往下执⾏,如果为假就会报错
public static void main(String[] args){
asrt(1>0);//该条件为真,可以往下执⾏
System.out.println("执⾏成功");
}
public static void main(String[] args){
asrt(1<0);//该条件为假,会报错
System.out.println("执⾏失败");//这条语句不会执⾏
dominate翻译
}
报错信息如下
2.AsrtUtil()⼯具类的⽤法和对应逻辑
我发现很多博主写的AsrtUtil()⼯具类其实都是⼀些判断⾮空的⽅法,
或者通过该⼯具类来返回异常,
⾥⾯的很多⽅法都是可以⾃定义的,
我下⾯来简写2个相应的AsrtUtil()⼯具类,
⼤家可以对应的理解⼀下其中的含义。
该⼯具类是 cwl_java 博主写的,⾥⾯全是判断⾮空的⽅法,返回boolean类型,其实这些⽅法在StringUtils⾥⾯都有了,⾃⼰再写⼀遍也可以加深印象。
public class AsrtUtil {
/**
* 功能描述:
* 〈判断数组是否为空〉
*/
public static<T>boolean isEmpty(T[] obj){
return null == obj ||0== obj.length;
}
/**
* 功能描述:
* 〈判断数组是否不为空〉
*/
public static<T>boolean isNotEmpty(T[] obj){
return!isEmpty(obj);
}
/**
* 功能描述:
* 〈判断对象是否为空〉
*/
public static boolean isEmpty(Object obj){
return null == obj;
}
/**
* 功能描述:
* 〈判断对象是否不为空〉
*/
public static boolean isNotEmpty(Object obj){
public static boolean isNotEmpty(Object obj){
return!isEmpty(obj);
}
日语幸运/**
* 功能描述:
* 〈字符串是否为空〉
*/
public static boolean isEmpty(String str){
return null == str ||"".equals(str);
}
/**
* 功能描述:
* 〈字符串是否不为空〉
*/
public static boolean isNotEmpty(String str){
return!isEmpty(str);
}
/**
* 功能描述:
* 〈判断集合是否为空〉
et是什么意思
*/
public static boolean isEmpty(Collection obj){
return null == obj || obj.isEmpty();
}
/**
* 功能描述:
* 〈判断集合是否不为空〉
*/
public static boolean isNotEmpty(Collection obj){
美国voa慢速英语
return!isEmpty(obj);
}
/**
* 功能描述:
* 〈判断map集合是否为空〉
*/
public static boolean isEmpty(Map obj){
return null == obj || obj.isEmpty();
}
/**
* 功能描述:
* 〈判断map集合是否不为空〉
*/
public static boolean isNotEmpty(Map obj){
return!isEmpty(obj);
}
/**
* 功能描述:
* 〈char数值是否是数字〉
*/
public static boolean charIsNumb(int charValue){
return charValue >=48&& charValue <=57|| charValue >=96&& charValue <=105; }
/
**
* 功能描述:
* 〈判断字符串是否是纯数字浮点类型〉
*/
public static boolean isFloat(String s){
if(!(s.indexOf(".")>-1)){
return fal;
}visage
char[] chars = s.toCharArray();
char[] chars = s.toCharArray();
boolean flag =true;
for(char aChar : chars){
if(aChar !=46){
if(!(aChar >=48&& aChar <=57|| aChar >=96&& aChar <=105)){ flag =fal;
break;
}
}
}
return flag;
}
/**
* 功能描述:
* 〈⾮纯数字浮点类型〉
*/
public static boolean isNotFloat(String s){
return!isFloat(s);
}
/**
* 功能描述:
* 〈字符串是否是数字〉
*/展览路一小
public static boolean isNumb(String str){
if(isEmpty((Object)str)){
return fal;
}el{
char[] chr = CharArray();
for(int i =0; i < chr.length;++i){
if(chr[i]<'0'|| chr[i]>'9'){
return fal;
}
}
return true;
}
}
/
**
* 功能描述:
* 〈判断字符串是否不是数字〉
*/
public static boolean isNotNumb(String str){
return!isNumb(str);
}
/**
* 功能描述:
* 〈判断字符串是否有长度,并⾃定义异常信息〉
*/
public static void hasLength(String str, String msg){
if(str == null || str.length()<1){
throw new RuntimeException(msg);
}
}
/**
* 功能描述:
* 〈⾃定义参数校验异常〉
*/
public static void paramCheck(String bj){
for(Object o : obj){
/
/ 参数异常
if(isEmpty(o)){
throw new RuntimeException(msg);
}
}
}
}
/**
* 功能描述:
* 〈可变参数,判断是否所有对象都为空〉
*/
public static boolean obj){
Object[] var1 = obj;
int var2 = obj.length;
for(int var3 =0; var3 < var2;++var3){
Object o = var1[var3];
if(!isEmpty(o)){
return fal;
}
}
return true;
}
/
**
* 功能描述:
* 〈可变参数-判断只要有任意⼀个对象为空,则为true〉
*/
humopublic static boolean obj){
Object[] var1 = obj;
int var2 = obj.length;
for(int var3 =0; var3 < var2;++var3){
Object o = var1[var3];
if(isEmpty(o)){
发呆的意思
return true;
}
}
return fal;
}
/**
* 功能描述:
* 〈可变参数 -判断是否所有参数都不为空〉
*/
哥伦布传public static boolean obj){
Object[] var1 = obj;
int var2 = obj.length;
for(int var3 =0; var3 < var2;++var3){
Object o = var1[var3];
if(isEmpty(o)){
return fal;
}
}
return true;
}
/**
* 功能描述:
* 〈判断是否两个对象相等〉
*/
public static boolean isEqual(Object o1, Object o2){
if(o1 == null){
return o2 == null;
}el if(o2 == null){
return fal;
}el Class().isArray()){
for(int i =0; i <((Object[])((Object[])o1)).length;++i){
if(!isEqual(((Object[])((Object[])o1))[i],((Object[])((Object[])o2))[i])){
return fal;
}
}
return true;
}el if(Collection.class.Class())){
Iterator i1 =((Collection)o1).iterator();
Iterator i2 =((Collection)o2).iterator();
if(((Collection)o1).size()!=((Collection)o2).size()){
return fal;
}el{
for(int i =0; i <((Collection)o1).size();++i){
if(!(), i2.next())){
return fal;
}
}
return true;
}
}el if(!Map.class.Class())){
return o1.equals(o2);
}el{
Map<Object, Object> m1 =(Map)o1;
Map<Object, Object> m2 =(Map)o2;
if(m1.size()!= m2.size()){
return fal;
}el if(!isEqual(m1.keySet(), m2.keySet())){
return fal;
}el{
Iterator var4 = m1.entrySet().iterator();
Map.Entry o;
do{
if(!var4.hasNext()){
return true;
神社是什么意思}
o =(Map.();
}Key())&&Value(), m2.Key())));
return fal;
}
}
}
/**
* 功能描述:
* 〈判断两个对象是否不相等〉
*/
public static boolean isNotEqual(Object o1, Object o2){
return!isEqual(o1,o2);
}
/
**
* 功能描述:
* 〈⽐较两个集合是否相等〉
*/
public static boolean compare(List<Comparable> l1, List<Comparable> l2){
if(l1 != null &&!l1.isEmpty()){
if(l2 != null &&!l2.isEmpty()){
Collections.sort(l1);
Collections.sort(l2);
if(l1.size()!= l2.size()){
return fal;
}el{
for(int i =0; i < l1.size();++i){
if((((i)).(i))!=0){
return fal;
}