println в Scala с использованием Intellij показывает странное поведение
Я пишу небольшую программу в scala, которая будет имитировать практику врачей. Одним из требований является то, что пользователь может назначить консультации с врачом. Я реализовал решение, которое дает вам объект консультации в случае успеха, а также печатает сообщение о том, что действие было успешным.
Вот где появляется небольшая "ошибка" (более незначительная, но раздражающая неудобство). Когда я говорю своей рабочей таблице scala создать новую переменную следующим образом:
var consultation: Consultation = patient.makeConsultation(x, y, z)
Ну, это прекрасно работает, НО сообщение о том, что оно должно быть напечатано, печатается в верхней части окна вывода, а не в той точке на рабочем листе, где фактически была создана переменная. Кто-нибудь знает решение для этого?
Заранее спасибо.
1 ответ
Это не ошибка, а ожидаемое поведение. println
в вашем makeConsultation
Функция является побочным эффектом, который не имеет ничего общего с созданием Consultation
,
Вы можете использовать систему типов Scala (проверьте Option
или же Try
) представлять это makeConsultation
может потерпеть неудачу.