修复无法对比boolean

This commit is contained in:
zhou-hao
2020-03-17 17:09:48 +08:00
parent 0c91e587e8
commit 1c8ec490df
2 changed files with 11 additions and 2 deletions

View File

@@ -152,6 +152,11 @@ public abstract class CompareUtils {
return compare(Arrays.asList(number), target);
}
public static boolean compare(Boolean bool, Object target) {
return bool.equals(target) || String.valueOf(bool).equals(target);
}
public static boolean compare(Number number, Object target) {
if (number == target) {
return true;
@@ -178,9 +183,9 @@ public abstract class CompareUtils {
DateFormatter dateFormatter = DateFormatter.getFormatter(stringValue);
return (dateFormatter.toString(new Date(number.longValue())).equals(stringValue));
}
try{
try {
return new BigDecimal(stringValue).doubleValue() == number.doubleValue();
}catch (NumberFormatException e){
} catch (NumberFormatException e) {
return false;
}
}

View File

@@ -15,11 +15,15 @@ public class DiffTest {
Map<String, Object> before = new HashMap<>();
before.put("name", "name");
before.put("age",21);
before.put("bool", true);
before.put("bool", false);
before.put("birthday", DateFormatter.fromString("19910101"));
Map<String, Object> after = new HashMap<>();
after.put("name", "name");
after.put("age", "21");
after.put("bool", "true");
after.put("bool", "false");
after.put("birthday", "1991-01-01");