Еще во времена Java 1.0 метод .toString () для массивов был реализацией по умолчанию, поэтому
knights.split(regex).toString()
распечатал бы
[java.lang.String@01234abcdef]
или что-то еще (я не могу вспомнить точное форматирование). В конце концов было решено, что должен быть хороший способ красивой печати массивов, но было слишком поздно менять поведение или array.toString ().
Таким образом, одним из статических вспомогательных методов в java.util.Arrays является новый метод .toString (array), и поэтому нельзя просто вызывать .toString () для массива.
Как уже отмечали другие люди, если вы действительно хотите избежать Arrays.toString (), вы можете использовать цикл. Но библиотечная функция должна использоваться.