int (String str) { int i = Math.min(count, str.count); int x = offset; int y = str.offset; while (--i >= 0) { int result = Character.toLowerCase(Character.toUpperCase(value[x++])) - Character.toLowerCase(Character.toUpperCase(str.value[y++])); if (result != 0) return result; } return count - str.count; }