public class MaxHeap<T extends Comparable<T>> implements Heap<T>{
private T[] heap;
private int lastIndex;
private static final int defaultInitialCapacity = 25;
public void add(T newItem) throws HeapException{
if (lastIndex < Max_Heap){
heap[lastIndex] = newItem;
int place = lastIndex;
int parent = (place – 1)/2; //ERROR HERE**********
while ( (parent >=0) && (heap[place].compareTo(heap[parent])>0)){
T temp = heap[place];
heap[place] = heap[parent];
heap[parent] = temp;
place = parent;
parent = (place-1)/2;
}else {
throw new HeapException("HeapException: Heap full"); }
}
}
Eclipse 提示有一个:
"Syntax error on token "Invalid Character", invalid AssignmentOperator"
(place-1) 下方有红线
根本不应该有错误,因为它只是简单的算术。还是事情没那么简单?
最佳答案
您实际上并没有使用减号 (-
),而是使用了其他符号。
尝试删除它并添加另一个 -
符号。
关于java - Bizzare Java 无效赋值运算符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2647356/