From 8008d68eb9905c5034e4e6f6c9a3574748b9b3ea Mon Sep 17 00:00:00 2001 From: tromey Date: Wed, 10 Sep 2003 18:11:05 +0000 Subject: 2003-09-10 David Daney * java/util/Arrays.java (equals(all variants)): Quit using NullPointerException catching to detect null valued parameters. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71275 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/java/util/Arrays.java | 219 ++++++++++++++++++------------------------ 1 file changed, 91 insertions(+), 128 deletions(-) (limited to 'libjava/java/util') diff --git a/libjava/java/util/Arrays.java b/libjava/java/util/Arrays.java index 35e0e92ca59..080b4b9cbf9 100644 --- a/libjava/java/util/Arrays.java +++ b/libjava/java/util/Arrays.java @@ -1,5 +1,5 @@ /* Arrays.java -- Utility class with methods to operate on arrays - Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -398,23 +398,18 @@ public class Arrays if (a1 == a2) return true; - try + if (null == a1 || null == a2) + return false; + + // If they're the same length, test each element + if (a1.length == a2.length) { - // If they're the same length, test each element - if (a1.length == a2.length) - { - int i = a1.length; - while (--i >= 0) - if (a1[i] != a2[i]) - return false; - return true; - } - } - catch (NullPointerException e) - { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (a1[i] != a2[i]) + return false; + return true; } - return false; } @@ -433,21 +428,17 @@ public class Arrays if (a1 == a2) return true; - try - { - // If they're the same length, test each element - if (a1.length == a2.length) - { - int i = a1.length; - while (--i >= 0) - if (a1[i] != a2[i]) - return false; - return true; - } - } - catch (NullPointerException e) + if (null == a1 || null == a2) + return false; + + // If they're the same length, test each element + if (a1.length == a2.length) { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (a1[i] != a2[i]) + return false; + return true; } return false; } @@ -467,21 +458,17 @@ public class Arrays if (a1 == a2) return true; - try + if (null == a1 || null == a2) + return false; + + // If they're the same length, test each element + if (a1.length == a2.length) { - // If they're the same length, test each element - if (a1.length == a2.length) - { - int i = a1.length; - while (--i >= 0) - if (a1[i] != a2[i]) - return false; - return true; - } - } - catch (NullPointerException e) - { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (a1[i] != a2[i]) + return false; + return true; } return false; } @@ -501,21 +488,17 @@ public class Arrays if (a1 == a2) return true; - try - { - // If they're the same length, test each element - if (a1.length == a2.length) - { - int i = a1.length; - while (--i >= 0) - if (a1[i] != a2[i]) - return false; - return true; - } - } - catch (NullPointerException e) + if (null == a1 || null == a2) + return false; + + // If they're the same length, test each element + if (a1.length == a2.length) { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (a1[i] != a2[i]) + return false; + return true; } return false; } @@ -535,21 +518,17 @@ public class Arrays if (a1 == a2) return true; - try - { - // If they're the same length, test each element - if (a1.length == a2.length) - { - int i = a1.length; - while (--i >= 0) - if (a1[i] != a2[i]) - return false; - return true; - } - } - catch (NullPointerException e) + if (null == a1 || null == a2) + return false; + + // If they're the same length, test each element + if (a1.length == a2.length) { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (a1[i] != a2[i]) + return false; + return true; } return false; } @@ -569,21 +548,17 @@ public class Arrays if (a1 == a2) return true; - try - { - // If they're the same length, test each element - if (a1.length == a2.length) - { - int i = a1.length; - while (--i >= 0) - if (a1[i] != a2[i]) - return false; - return true; - } - } - catch (NullPointerException e) + if (null == a1 || null == a2) + return false; + + // If they're the same length, test each element + if (a1.length == a2.length) { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (a1[i] != a2[i]) + return false; + return true; } return false; } @@ -603,22 +578,18 @@ public class Arrays if (a1 == a2) return true; + if (null == a1 || null == a2) + return false; + // Must use Float.compare to take into account NaN, +-0. - try + // If they're the same length, test each element + if (a1.length == a2.length) { - // If they're the same length, test each element - if (a1.length == a2.length) - { - int i = a1.length; - while (--i >= 0) - if (Float.compare(a1[i], a2[i]) != 0) - return false; - return true; - } - } - catch (NullPointerException e) - { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (Float.compare(a1[i], a2[i]) != 0) + return false; + return true; } return false; } @@ -638,22 +609,18 @@ public class Arrays if (a1 == a2) return true; + if (null == a1 || null == a2) + return false; + // Must use Double.compare to take into account NaN, +-0. - try - { - // If they're the same length, test each element - if (a1.length == a2.length) - { - int i = a1.length; - while (--i >= 0) - if (Double.compare(a1[i], a2[i]) != 0) - return false; - return true; - } - } - catch (NullPointerException e) + // If they're the same length, test each element + if (a1.length == a2.length) { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (Double.compare(a1[i], a2[i]) != 0) + return false; + return true; } return false; } @@ -674,21 +641,17 @@ public class Arrays if (a1 == a2) return true; - try - { - // 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; - } - } - catch (NullPointerException e) + if (null == a1 || null == a2) + return false; + + // If they're the same length, test each element + if (a1.length == a2.length) { - // If one is null, we get a harmless NullPointerException + int i = a1.length; + while (--i >= 0) + if (! AbstractCollection.equals(a1[i], a2[i])) + return false; + return true; } return false; } -- cgit v1.2.1