//-------------------------------------------------------------------------
        public virtual void test_equalsHashCode()
        {
            DoubleMatrix a1 = DoubleMatrix.copyOf(new double[][]
            {
                new double[] { 2d, 3d }
            });
            DoubleMatrix a2 = DoubleMatrix.copyOf(new double[][]
            {
                new double[] { 2d, 3d }
            });
            DoubleMatrix b = DoubleMatrix.copyOf(new double[][]
            {
                new double[] { 3d, 3d }
            });
            DoubleMatrix c = DoubleMatrix.copyOf(new double[][]
            {
                new double[] { 2d, 3d },
                new double[] { 4d, 5d }
            });
            DoubleMatrix d = DoubleMatrix.copyOf(new double[][]
            {
                new double[] { 2d }
            });

            assertEquals(a1.Equals(a1), true);
            assertEquals(a1.Equals(a2), true);
            assertEquals(a1.Equals(b), false);
            assertEquals(a1.Equals(c), false);
            assertEquals(a1.Equals(d), false);
            assertEquals(a1.Equals(ANOTHER_TYPE), false);
            assertEquals(a1.Equals(null), false);
            assertEquals(a1.GetHashCode(), a2.GetHashCode());
        }