使用Comparator对Queue排序

											              使用Comparator对Queue排序
											(作者:覃煜霖,撰写时间: 2019年 05月 7日)

Queue队列也可进行排序,可以使用Comparator和Comparable进行排序。
代码如下:
public class Queue{
public static void main(String[] args) {
//boolean a = true;
int c = 5;

	while(c<15){
		do{
			c++;
			
			if(c==6){
				continue;
			}
			System.out.println("c"+c);
		}while(c<10);
		//此处测试
		//System.out.println("wc"+c);
		
		//System.out.println("wc"+c);
	}
	
	
	Comparator<DataType> xvLie7 = new Comparator<DataType>() {

		@Override
		public int compare(DataType o1, DataType o2) {
			// TODO Auto-generated method stub
			return o1.getBit() - o2.getBit();
		}
	};
	java.util.Queue<DataType> q1 = new LinkedList<DataType>();
	q1.add(new DataType("byte",8,1));
	q1.add(new DataType("boolean",8,1));
	q1.add(new DataType("char",16,2));
	q1.add(new DataType("float",32,4));
	q1.add(new DataType("double",64,8));
	q1.add(new DataType("short",16,2));
	q1.add(new DataType("int",32,4));
	q1.add(new DataType("long",64,8));
	System.out.println(q1.poll().getDataType());
	System.out.println(q1.poll().getDataType());
	System.out.println(q1.poll().getDataType());
	Collections.sort((LinkedList<DataType>) q1,xvLie7);
	Iterator<DataType> i7 = q1.iterator();
	while(i7.hasNext()){
		DataType dT7 = i7.next();
		System.out.println(dT7.getDataType()+"\t"+dT7.getBit()+"\t"+dT7.getByteMath());
	}
}

}

猜你喜欢

转载自blog.csdn.net/weixin_44543103/article/details/89956983