решая последнюю задачу интереснее всего было узнать, как её решат на JR. Оказалось, что так же... Интересно, если ли еще какие-то способы? ну например, что бы сдвинуть сразу все символы или что-то вроде того.
нет, ну почему же. Вот принимаемый параметр как-раз таки и может быть null. А вот возвращаемый параметр уже не должен быть. Но насчет правильности такого подхода, конечно, можно и поспорить: тебе на вход дают хрень, а метод такой: да вот, пожалуйста вот такой ответ.
В задачах "Читаем из потока" и "Шифр Цезаря" неверно работает валидатор: код не проходит проверку на возврат null, даже когда метод точно возвращает не null
Неправильный вариант решения 2 задачи, но ведь было красиво:
public static String getStackTrace(Throwable throwable) {
PrintStream oldErr = System.err;
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
PrintStream newErr = new PrintStream(byteArrayOutputStream);
System.setErr(newErr);
throwable.printStackTrace();
System.setErr(oldErr);
return byteArrayOutputStream.toString();
}
Но валидатор потребовал использовать StringWriter, хотя нужно отдать должное, с пунктом о том, что я все-таки возвращаю стек-трейс в виде строки, он был согласен
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ