public static boolean objectEquals()

in src/main/java/com/ql/util/express/Operator.java [48:77]


    public static boolean objectEquals(Object op1, Object op2) {
        if (op1 == null && op2 == null) {
            return true;
        }
        if (op1 == null || op2 == null) {
            return false;
        }

        //Character的值比较
        if (op1 instanceof Character || op2 instanceof Character) {
            int compareResult;
            if (op1 instanceof Character && op2 instanceof Character) {
                return op1.equals(op2);
            } else if (op1 instanceof Number) {
                compareResult = OperatorOfNumber.compareNumber((Number)op1, (int)(Character)op2);
                return compareResult == 0;
            } else if (op2 instanceof Number) {
                compareResult = OperatorOfNumber.compareNumber((int)(Character)op1, (Number)op2);
                return compareResult == 0;
            }
        }
        //数值的值比较
        if (op1 instanceof Number && op2 instanceof Number) {
            //数字比较
            int compareResult = OperatorOfNumber.compareNumber((Number)op1, (Number)op2);
            return compareResult == 0;
        }
        //调用原始Object的比较
        return op1.equals(op2);
    }