我在Java代码上找不到错误(11行)-你能给出一些想法吗


Packet packet = new Packet(slot, i+1, n+1);
noOfPacketsGenerated++;
if (queues[i][0].size()+queues[i][1].size()+queues[i][2].size()+queues[i]].size()+queues[i][4].size()+queues[i][5].size()+queues[i][6].size()+queues[i][7].size()<QUEUE_SIZE)
queues[i][n].add(packet);
else {
bufferFails[i]++;
if (debug) 
System.out.println("BUFFER FULL @ node "+(i+1));
}

照片中的错误

我找不到错误在哪里?。非常感谢您的帮助。

根据错误的图像,您似乎在代码中放入了一个重复的]。即,您有

queues[i][0].size()+queues[i][1].size()+queues[i][2].size()+queues[i]] // ...

你应该在哪里有

queues[i][0].size()+queues[i][1].size()+queues[i][2].size()+queues[i] // ...

编译器错误有时可能是神秘的,特别是如果一个放错位置的字符具有级联效应,但在这种情况下,它会在错误发生的位置向右画一个箭头。

附言:这是一行非常冗长的代码,有很大的错误空间。我建议把它分成几行,或者制作一些由这些单独的语句组成的临时值,然后在代码中放入一个更短、更简洁的if语句。

最新更新