java 非法参数异常_Java的比较抛出非法参数异常
我得到这个错误:当我试图在Java中运行这个比较对我的实体系统Java的比较抛出非法参数异常
Exception in thread "Thread-3" java.lang.IllegalArgumentException: Comparison method violates its general contract!
:
private Comparator spriteSorter = new Comparator() {
public int compare(Entity e0, Entity e1) {
if (e1.position.getX() <= e0.position.getX())
return +1;
if (e1.position.getY() >= e0.position.getY())
return -1;
return 0;
}
};
下面是执行:
private void sortAndRender(Bitmap b, Vec2 offset, ArrayList l) {
Collections.sort(l, spriteSorter);
for (int i = 0; i < l.size(); i++) {
l.get(i).render(b, offset);
}
}
这个问题只在我在屏幕上显示大量实体时才真正开始发生。这里发生了什么?
2013-03-09
DazKins
+1
大于/小于符号不正确,您的比较函数永远不会返回零 –
2013-03-09 17:54:28
+0
您没有实现equals(Object)方法。 –
2013-03-09 17:55:06
+0
@shuangwhywhy这与'equals'无关。 –
2013-03-09 17:56:19
java 非法参数异常_Java的比较抛出非法参数异常相关推荐
- java 最后的异常_java – 最后不要抛出堆栈溢出异常
Error不是例外.所以捕捉任何异常都不会捕获StackOverflowError. 所以让我们先来看一下"明显的错误" – (这段代码不太适合这个答案后面的说明): catch( ...
- java 向上抛异常_java throws 向上抛出的概念问题
展开全部 ------------------附注------------------------ 向上抛出的意思 针对 子类 父类, 这里面涉及到几个方面,最重323131333532363134 ...
- java抛出数组格式异常,Java中异常
一.异常的概述 在Java中,把异常信息封装成了一个类.当出现了问题时,就会创建异常类对象并抛出异常相关的信息(如异常出现的位置.原因等). 二.异常的继承体系和错误的区别 1.异常的继承体系 Thr ...
- java中子类可否抛出两个父类抛出的异常的子类_父类的多个构造方法各自抛出不同的异常,子类的构造方法应该抛出哪个/些异常?...
[情况描述]如下代码,在父类中定义了两个构造方法,各自throws不同的异常.当定义子类时,IDE会提示需要显示定义构造方法来抛出父类构造方法的异常.很自然地认为应该抛出父类所有构造方法的异常,然而只 ...
- 【java基础】java异常,捕获与抛出
java异常,捕获与抛出 1.概念: 在java里,所有的异常都有一个共同的祖先Throwable(可抛出). Throwable:有两个重要的子类:Exception(异常)和Error(错误). ...
- 怎么一次抛出多个异常
定义一个自定义异常,如下: import java.util.ArrayList; import java.util.List;/*** 自定义异常*/ public class MyExceptio ...
- .NET 指南:捕获并且抛出标准的异常类型
下列指导方针为 .NET Framework 所提供的一些最常用的异常而描述了最佳的实践.关于 .NET Framework 所提供的完整的异常类列表,请参考:[.NET Framework 类库参考 ...
- [转贴] 从零开始学C++之异常(二):程序错误、异常(语法、抛出、捕获、传播)、栈展开...
一.程序错误 编译错误,即语法错误.程序就无法被生成运行代码. 运行时错误 不可预料的逻辑错误 可以预料的运行异常 例如: 动态分配空间时可能不会成功 打开文件可能会失败 除法运算时分母可能为0 整数 ...
- C++ 抛出和接收异常的顺序
代码编译运行环境:VS2017+Debug+Win32 异常(exception)是 C++ 引入的错误处理机制.它采用了统一的方式对程序的运行时错误进行处理,具有标准化.安全和高效的特点.C++ 为 ...
最新文章
- vmd变分模态分解程序matlab论坛_博士兼职辅导员论坛分享会第三期
- 10个你值得收藏的牛逼开源后台控制面板
- form中的onblur事件简单的介绍
- 华东信标组预赛前三名
- Java实战应用50篇(二)-SSM框架中的设计模式:动态代理
- 利用python自带的包可以建立简单的web服务器
- docker启动sqlserver_ASP.NET Core容器化技术Docker零基础从入门到实战演练
- robodk导出html错误,在优傲机器人示教器上调试RoboDK机器人程序
- python seach_python 正则re.search
- C/C++语言函数学习(4)字符串处理函数
- 先进技术android,React Native实战(JavaScript开发iOS和Android应用)/计算机科学先进技术译丛...
- 签约沈腾,易车开启三年品牌计划,穿越车市寒冬
- 身为前端工程师,对你来说,你认为最重要的是什么?
- ASP.NET Core MVC请求超时设置解决方案
- Atitit. 构造ast 语法树的总结attilax oao
- VeryCD 电驴(easyMule) 1.1.9 稳定版
- 1005打印任务取消不了 hp_(完整版)hp打印机无法取消打印的文档解决方法
- 浅谈Python爬虫(八)【有道词典翻译API】
- 三相全控tc787触发电路_何为可控硅整流器三相桥和双反星整流电路?
- 每日 CRUD?两年滴滴和入职头条的后端开发经验分享!共勉!
热门文章
- H5非常炫酷的加载特效loading
- elementUI中修改el-input样式
- ios软键盘弹出布局上移问题
- VirtualBox6.0中CentOS7网络配置
- Conv2Former: A Simple Transformer-Style ConvNet for Visual Recognition
- 报告(2022-7-26)
- 【css】炫酷半边边框效果div
- Android6运行所需内存大小,Android手机的运行内存要多少才合适
- java中关于++x前加加和x++后加加的疑惑!
- Bug:org.elasticsearch.action.ActionRequestValidationException: Validation Failed:1: index is missin