Я немного озадачен тем, как Java обрабатывает преобразование.
У меня есть массив символов, состоящий из 0 (не '0')
char[] bar = {0, 'a', 'b'};
System.out.println(String.valueOf(bar));
Когда это происходит, метод println ничего не выводит. Но когда я рассматриваю ноль как символ:
char[] bar = {'0', 'a', 'b'};
System.out.println(String.valueOf(bar));
Затем выдается «0ab», как и ожидалось.
Насколько я понимаю, вы объявляете массив примитивного типа с пустым значением, например:
char [] foo = new char [10];
эти пустые ячейки имеют значение по умолчанию 0 в Java, поэтому я подумал, что было бы нормально иметь 0 в массиве char, но, похоже, что нет. Кто-нибудь может объяснить, почему метод print даже не выводит 'a' и 'b'?