BTW: Are you sure you do not mean
public class Queue implements Iterable<Something>?
Or even
public class Queue<T> implements Iterable<T>?
> public class Queue implements Iterable
> {
> //...
> private class QueueNode implements Comparable<QueueNode>
> {
> Comparable data;
If your data is of Type DataType, replace this with:
Comparable<DataType> data;
Or if you where gunning at a generic class
Comparable<? super T> data;
> //...
> public int compareTo(QueueNode node)
[quoted text clipped - 17 lines]
> syntax involved with the generics of this code so that it will compile
> successfully and without any warnings?
See above. The call to compareTo uses the raw Comparable type, not
Comparable<Something>

Signature
You can't run away forever,
But there's nothing wrong with getting a good head start.
--- Jim Steinman, "Rock and Roll Dreams Come Through"