直接的答案是因为Comparator.compares接口被指定为不会抛出异常.但那是为什么呢?
或者说它不同:我Comparator必须依赖于可以抛出异常的函数.从理论上讲,这不应该发生.但如果它发生了,我希望它突破我使用它Comparator(in Collections.sort)的整个功能.即我希望它只是表现为发生了未处理的异常.
看起来这是不可能以一种明显的自然方式(因为如果接口说它不能抛出异常,它就不能).
我该如何解决这个问题?有一个丑陋的尝试/捕获并打印出异常并希望我认识到它?这似乎是一种非常丑陋的方式.