使用Intellij在scala中的println显示奇怪的行为

时间:2017-12-31 10:45:18

标签: scala intellij-idea println

我正在用scala编写一个可以模拟医生实践的小程序。其中一个要求是用户可以与医生进行咨询。我已经实现了一个解决方案,如果您成功,它会为您提供咨询对象,并且还会打印一条消息,说明操作成功。

这是一个小小的“虫子”(更多的是一个轻微但令人讨厌的不便之处)出现的地方。当我告诉我的scala工作表创建一个新变量时:

var consultation: Consultation = patient.makeConsultation(x, y, z)

这很有效但是它应该打印的消息打印在输出窗口的顶部而不是在工作表中的那个点上实际创建了变量。有没有人知道这方面的解决方案?

提前致谢。

1 个答案:

答案 0 :(得分:1)

这不是错误,而是预期的行为。 Consultation函数中的Option副作用,与Try的创建无关。

您可以使用Scala的类型系统(选中makeConsultation或{{1}})来表示{{1}}可能失败。