return toUpperCase(Locale.getDefault());
boolean turkish = "tr".equals(loc.getLanguage()); int expand = 0; boolean unchanged = true; int i = count; int x = i + offset; while (--i >= 0) { char ch = value[--x]; expand += upperCaseExpansion(ch); unchanged = (unchanged && expand == 0 && ! (turkish && ch == '\u0069') && ch == Character.toUpperCase(ch)); } if (unchanged) return this;   i = count; if (expand == 0) { char[] newStr = (char[]) value.clone(); while (--i >= 0) { char ch = value[x];  newStr[x++] = (turkish && ch == '\u0069') ? '\u0130' : Character.toUpperCase(ch); }  return new String(newStr, offset, count, true); }   char[] newStr = new char[count + expand]; int j = 0; while (--i >= 0) { char ch = value[x++];  if (turkish && ch == '\u0069') { newStr[j++] = '\u0130'; continue; } expand = upperCaseExpansion(ch); if (expand > 0) { int index = upperCaseIndex(ch); while (expand-- >= 0) newStr[j++] = upperExpand[index++]; } else newStr[j++] = Character.toUpperCase(ch); }  return new String(newStr, 0, newStr.length, true);
  public String toUpperCase()  {    return toUpperCase(Locale.getDefault());  }