Посмотрите на следующий фрагмент кода в Java.
final public class Main
{
public static void main(String[] args)
{
Locale.setDefault(new Locale("lt"));
String str = "\u00cc"; //setting Lithuanian as locale
System.out.println("Before case conversion is "+str+" and length is "+str.length());// Ì
String lowerCaseStr = str.toLowerCase();
System.out.println("Lower case is "+lowerCaseStr+" and length is "+lowerCaseStr.length());// i?`
}
}
Отображает следующий вывод.
До преобразования регистра is и длина 1
Нижний регистр - это i̇̀, а длина - 3
В первом операторе System.out.println()
результат является точным.Однако во втором операторе отображается длина 3 , которая фактически должна была быть 1 .Я не понимаю, почему?