public static boolean equals(Object[] a1, Object[] a2)
public static boolean equals(boolean[] a1, boolean[] a2)
  public static boolean equals(Object[] a1, Object[] a2)  {    // Quick test which saves comparing elements of the same array, and also    // catches the case that both are null.    if (a1 == a2)      return true;    if (null == a1 || null == a2)      return false;        // If they're the same length, test each element    if (a1.length == a2.length)      {	int i = a1.length;	while (--i >= 0)	  if (! AbstractCollection.equals(a1[i], a2[i]))	    return false;	return true;      }    return false;  }