verysu 设计模式 设计模式 响应式编程 百度开发平台 codeforces leetcode usfca

导航

java 疑难

1.java.lang.IllegalArgumentException: Comparison method violates its general contract!

-Djava.util.Arrays.useLegacyMergeSort=true

是在TimSort类里,说明实际走的是else分支,所以有了第一种解决方法,添加-Djava.util.Arrays.useLegacyMergeSort=true这个JVM参数,其实要真正解决这个问题,要符合规范的实现compare方法,因为他写的代码里没有考虑对象o1和对象o2为Null的情况,即当o1与o2都为null时两者大小如何判定呢,当o1为null但o2不为null时两者大小又如何判定了呢,同理当o2为null但o1不为null时两者大小又如何判定呢又不得而知,或许你又会说,我这两个对象不可能为null,但那是你认为,JVM不知道,它只要求你的逻辑必须严谨,严格考虑各种情况下两者大小的判定原则

SecureRandom在java各种组件中使用广泛,可以可靠的产生随机数。但在大量产生随机数的场景下,性能会较低。这时可以使用 "-Djava.security.egd= file:/dev/./urandom "加快随机数产生过程。

posted on 2022-02-24 10:33  泳之  阅读(114)  评论(0)    收藏  举报

我是谁? 回答错误