Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在驱动程序类中为堆排序实现创建对象_Java_Sorting_Heap_Heapsort - Fatal编程技术网

Java 在驱动程序类中为堆排序实现创建对象

Java 在驱动程序类中为堆排序实现创建对象,java,sorting,heap,heapsort,Java,Sorting,Heap,Heapsort,我正在实现一个HeapSort类,以便它使用addAll方法一次对整个列表进行排序,并将在heap中排序的元素重新存储到列表中。这是HeapSort类的驱动程序。为什么我不能创建一个新的HeapSort对象?我的意思是,当我尝试创建heapsort对象时,会出现错误,比如“heapsort是一个原始类型。对泛型类型heapsort的引用应该参数化。”还有错误,比如“构造函数heapsort(Integer[])未定义” 这些是什么意思?为什么我不能做这个东西 /*demonstrates the

我正在实现一个HeapSort类,以便它使用addAll方法一次对整个列表进行排序,并将在heap中排序的元素重新存储到列表中。这是HeapSort类的驱动程序。为什么我不能创建一个新的HeapSort对象?我的意思是,当我尝试创建heapsort对象时,会出现错误,比如“heapsort是一个原始类型。对泛型类型heapsort的引用应该参数化。”还有错误,比如“构造函数heapsort(Integer[])未定义” 这些是什么意思?为什么我不能做这个东西

/*demonstrates the HeapSort class so it orders the
 * entire list at once using addAll method and re-stores
 * the elements ordered in heap into the list*/
public class HeapDemo {

    public static void main(String[] args) {
        //create a list of integer objects
        Integer[] data = {4, 1, 6, 2, 5, 3};
        //display elements in list before sorting
        System.out.println("Elements in the list before sorting:");
        for(int i=0;i<data.length;i++)
            System.out.print(data[i] + " ");
            System.out.println();

            //create object for HeapSort class
            HeapSort first = new HeapSort(data);

            //display elements in list after sorting
            System.out.println("\nElements in the list after sorting:");
            for(int i=0;i<data.length;i++) 
                System.out.print(data[i] + " ");
            System.out.println();
    }

}
/*演示HeapSort类,以便对
*使用addAll方法一次完成整个列表并重新存储
*将堆中排序的元素放入列表中*/
公共类HeapDemo{
公共静态void main(字符串[]args){
//创建整数对象列表
整数[]数据={4,1,6,2,5,3};
//排序前在列表中显示元素
System.out.println(“排序前列表中的元素:”);

对于(int i=0;i您没有接受数组的构造函数。方法名称应以小写字母开头,并且绝对不应与类名称相同。构造函数没有返回类型

public void HeapSort(T[] data) 

不是构造函数。

您遇到了什么错误?没有任何类型的错误消息,我们不能说。@Mureinik抱歉,我更新了现在
构造函数HeapSort(Integer[])未定义的内容
意味着,这个构造函数没有在任何地方定义。请帮助我们-共享
HeapSort
的代码(至少是类和构造函数)(s) 但是现在我的错误是HeapSort.addAll(HeapSort.java:38)处HeapDemo.main(HeapDemo.java:18)处的线程“main”java.lang.NullPointerException中出现异常为什么在运行驱动程序时会发生这种情况?
addAll
通过引用或指针、变量、
heap
进行调用。如果
heap
null
,则它一定没有初始化为任何其他值。它是否初始化为任何其他值?
public void HeapSort(T[] data)