Из документации java api для Socket :
public void close () throws IOException Закрывает этот сокет. Любой поток, который в настоящий момент заблокирован в операции ввода-вывода в этом сокете, будет генерировать исключение SocketException.
Как только сокет был закрыт, он недоступен для дальнейшего использования в сети (т. Е. Не может быть повторно подключен или отскок) , Необходимо создать новый сокет.
Закрытие этого сокета также закроет InputStream и OutputStream сокета.
Если этот сокет имеет связанный канал, тогда канал также закрыт.
blockquote>Закрытие InputStream сокета приведет к закрытию Socket. То же самое касается закрытия OutputStream сокета.
Из документации java api для Socket # getInputStream ()
Закрытие возвращаемого InputStream закроет связанный сокет.
blockquote>Проверьте документацию по API, это по какой-то причине.
В последней строке попробуйте удалить кавычки вокруг zz . Когда я сделал это, я получил одинаковый результат для обоих вызовов m4_pascal_str:
++
++
11++
++
22 33 44++
++
++
++
11++
++
22 33 44++
++