Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
/**
 * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
 */

public class Main {
    /**
     * A comprehensive isEqual method that handles nulls and arrays safely.
     *
     * @param value
     *            Object
     * @param otherValue
     *            Object
     * @return boolean
     * @deprecated {@link Objects#deepEquals(Object, Object)}
     */
    @Deprecated
    @SuppressWarnings("PMD.CompareObjectsWithEquals")
    public static boolean areEqual(Object value, Object otherValue) {
        if (value == otherValue) {
            return true;
        }
        if (value == null) {
            return false;
        }
        if (otherValue == null) {
            return false;
        }

        if (value.getClass().getComponentType() != null) {
            return arraysAreEqual(value, otherValue);
        }
        return value.equals(otherValue);
    }

    /**
     * Returns true if the objects are array instances and each of their
     * elements compares via equals as well.
     *
     * @param value
     *            Object
     * @param otherValue
     *            Object
     * @return boolean
     * @deprecated {@link Objects#deepEquals(Object, Object)}
     */
    @Deprecated
    public static boolean arraysAreEqual(Object value, Object otherValue) {
        if (value instanceof Object[]) {
            if (otherValue instanceof Object[]) {
                return valuesAreTransitivelyEqual((Object[]) value, (Object[]) otherValue);
            }
            return false;
        }
        return false;
    }

    /**
     * Returns whether the arrays are equal by examining each of their elements,
     * even if they are arrays themselves.
     *
     * @param thisArray
     *            Object[]
     * @param thatArray
     *            Object[]
     * @return boolean
     * @deprecated {@link Arrays#deepEquals(Object[], Object[])}
     */
    @Deprecated
    public static boolean valuesAreTransitivelyEqual(Object[] thisArray, Object[] thatArray) {
        if (thisArray == thatArray) {
            return true;
        }
        if (thisArray == null || thatArray == null) {
            return false;
        }
        if (thisArray.length != thatArray.length) {
            return false;
        }
        for (int i = 0; i < thisArray.length; i++) {
            if (!areEqual(thisArray[i], thatArray[i])) {
                return false; // recurse if req'd
            }
        }
        return true;
    }
}