TextUtils: fixup isEmpty() and add equals()

This commit is contained in:
Julian Winkler
2023-07-14 17:56:31 +02:00
parent def91a688d
commit 151eb334cc

View File

@@ -62,6 +62,30 @@ public class TextUtils {
}
public static boolean isEmpty(CharSequence str) {
return str.equals(""); // presumably?
return str == null || str.equals("");
}
/**
* Returns true if a and b are equal, including if they are both null.
* <p><i>Note: In platform versions 1.1 and earlier, this method only worked well if
* both the arguments were instances of String.</i></p>
* @param a first CharSequence to check
* @param b second CharSequence to check
* @return true if a and b are equal
*/
public static boolean equals(CharSequence a, CharSequence b) {
if (a == b) return true;
int length;
if (a != null && b != null && (length = a.length()) == b.length()) {
if (a instanceof String && b instanceof String) {
return a.equals(b);
} else {
for (int i = 0; i < length; i++) {
if (a.charAt(i) != b.charAt(i)) return false;
}
return true;
}
}
return false;
}
}