【问题标题】:How to store any type of comparable object in a Binary Heap如何在二进制堆中存储任何类型的可比较对象
【发布时间】:2014-03-19 07:46:23
【问题描述】:

Java:我已经实现了我自己的Binary Heap 版本。它应该能够存储任何类型的 Comparable 对象。插入到堆中的对象来自输入数据,并且所有输入数据将属于同一类型。有没有办法告诉给定输入是什么对象类型?我正在使用

BufferedReader in = new BufferedReader(new InputStreamReader(System.in))

读取输入,in.readLine() 总是返回一个字符串。现在,我正在明确测试用户是否输入了整数,否则该对象始终存储为字符串。

读取输入的最佳方法是什么,看看它是什么类型,然后创建该类型的BinaryHeap<T>,然后正确插入?

【问题讨论】:

  • 任何对象都可以转换为字符串,但反向方法不可用(或不可能)。您必须为自己期望作为输入的所有类型添加“显式测试”,就像您为 Integer 所做的那样。

标签: java input bufferedreader comparable binary-heap


【解决方案1】:
public class BinaryHeap<T extends Comparable<? super T>>

【讨论】:

    猜你喜欢
    • 2016-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-16
    • 1970-01-01
    • 2011-07-02
    • 2011-09-25
    • 1970-01-01
    相关资源
    最近更新 更多