⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 isequal.java

📁 JUNIT1.4源文件等等 源文件等等 源文件等等 源文件
💻 JAVA
字号:
/*  Copyright (c) 2000-2006 hamcrest.org */package org.hamcrest.core;import org.hamcrest.Description;import org.hamcrest.Matcher;import org.hamcrest.Factory;import org.hamcrest.BaseMatcher;import java.lang.reflect.Array;/** * Is the value equal to another value, as tested by the * {@link java.lang.Object#equals} invokedMethod? */public class IsEqual<T> extends BaseMatcher<T> {    private final Object object;    public IsEqual(T equalArg) {        object = equalArg;    }    public boolean matches(Object arg) {        return areEqual(object, arg);    }    public void describeTo(Description description) {        description.appendValue(object);    }    private static boolean areEqual(Object o1, Object o2) {        if (o1 == null || o2 == null) {            return o1 == null && o2 == null;        } else if (isArray(o1)) {            return isArray(o2) && areArraysEqual(o1, o2);        } else {            return o1.equals(o2);        }    }    private static boolean areArraysEqual(Object o1, Object o2) {        return areArrayLengthsEqual(o1, o2)                && areArrayElementsEqual(o1, o2);    }    private static boolean areArrayLengthsEqual(Object o1, Object o2) {        return Array.getLength(o1) == Array.getLength(o2);    }    private static boolean areArrayElementsEqual(Object o1, Object o2) {        for (int i = 0; i < Array.getLength(o1); i++) {            if (!areEqual(Array.get(o1, i), Array.get(o2, i))) return false;        }        return true;    }    private static boolean isArray(Object o) {        return o.getClass().isArray();    }    /**     * Is the value equal to another value, as tested by the     * {@link java.lang.Object#equals} invokedMethod?     */    @Factory    public static <T> Matcher<T> equalTo(T operand) {        return new IsEqual<T>(operand);    }    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -