回答
你的对象是不是字符串,但整数(长)。所以不要试图解析它们。
你可以改变
if(Long.parseLong((String) item) > Long.parseLong((String) queArray[j]))
到
if ((Long) item) > (Long) queArray[j]))
你也可以改变
public void insert(Object item)
到
public void insert(Long item)
为了避免演员阵容。
但这不适用于其他类型的对象比长,所以不可能对你有用。
如果你希望能够比较任何类型的对象,你可以提供一个Comparator:
你会定义PriorityQ
为PriorityQ<T>
(使用泛型),加setComparator(Comparator comparator)
方法,并这样定义您的插入方法:
public void insert(T item)
...
if ((comparator.compare(item, queArray[j])>0) {
该装置还改变queArray阵列到T[]
类型。
当我这样做,它会导致相同的错误。 – HelpNeeder
是的,问题是我必须改变这个程序来使用任何对象,这意味着它必须使用泛型。 – HelpNeeder
您不能更改程序以使用任何对象,因为在内部使用了比较。 –
问题是您使用Integer类型值调用insert(Object item)
函数。
然后您尝试将其转换为字符串:(String) item
。
这不起作用。使用item.toString()
至将转换为String。
虽然你在它,你应该阅读:Java type casting
- 1. 重写超类如何知道方法而不创建对象
- 2. 我不知道如何重复这个整个程序
- 3. 我如何知道参数应该是一个对象而不是数组?
- 4. 有人可以解释如何重写init方法吗?我正在尝试使用边整数值初始化方形对象。我只是不知道如何?
- 5. 与asp.core中的我的dbcontext问题。不知道如何使用DbContextOptions对象
- 6. 如何访问不知道名称而导入的对象?
- 7. 如何编写beanshell程序? beanshell是一个编辑器,但我不知道如何使用它和在哪里?
- 8. C#确定我不完全知道如何问这个问题好对象
- 9. Swing“阻塞”,我想我需要线程,但不知道多少
- 10. 隐藏整数以浮动。问题解决了,但不知道为什么
- 11. URL重写不知道网页标题
- 12. 我不知道我的程序有什么问题,
- 13. JavaScript是NaN,但我知道它不是?
- 14. 我如何知道对象是否可以被弱引用?
- 15. 从RACTuple中减少值而不知道它的参数个数
- 16. 我可以使用angular.js与对象,而不是函数吗?
- 17. 我不知道如何应用值
- 18. setlistadapter问题我不知道这是如何工作的
- 19. 重写规则,不知道
- 20. django完整性错误,我知道为什么,但不知道如何解决
- 21. 我不知道如何编写查询
- 22. 我有一个结构,但我不知道如何使用它
- 23. 我不知道这个python程序中有什么问题
- 24. Javascript:如果我不知道对象的关键字,我如何访问嵌套对象中的值?
- 25. 如何知道UserControl是否活动,而不是使用IsFocused
- 26. 我用setTextFilterEnabled(真),但我不知道我应该写
- 27. 使用testFlight我得到了我的应用程序崩溃日志,但不知道出了什么问题
- 28. IndexError但我不知道什么是错
- 29. 我想打开我的文本文件,但我不知道问题是什么
- 30. 我需要创建<T>类的对象,但我不知道T和我的计划是找到使用泛型吨,但我不知道
什么会比整数不同的对象是什么意思?比较会是什么?它是基于Comparable吗? –
@dystroy,我和你一样知道:)我只是在摸索这个问题:D – HelpNeeder
我假设你有一个原因,你不能使用内建的'PriorityQueue',并且可以阅读它的代码以查看它的代码它的工作;) –