List 排序功能实现,服务器不响应

J2EE 码拜 7年前 (2015-11-24) 630次浏览
使用了下面这个方法在本地已经实现了排序功能,但是把程序发布到服务器上面就不响应了,方法照常走,但是排序功能没有体现出来,问一下是什么情况?服务器上面也没有任何报错。

Collections.sort(list, new ListMapSortComparator("distance","desc"){});
public abstract class ListMapSortComparator implements Comparator<Map<String, Object>> {
	private String key;
	private String order;
	public ListMapSortComparator(String key,String order) {
		System.out.println("--");
		this.key = key;
		this.order = order;
	}
	/*
	 * (non-Javadoc)
	 *
	 * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
	 */
	public int compare(Map<String, Object> o1, Map<String, Object> o2){
		int b1 = (Integer) o1.get(key);
		int b2 = (Integer) o2.get(key);
		if (order.equals("asc")) {
			System.out.println("asc");
			if (b2 != 0) {
				if(Math.min(b1, b2) == b2){
					return 1;
				}
			}
		}else{
			System.out.println("desc");
			if (b2 != 0) {
				if(Math.min(b1, b2) == b1){
					return 1;
				}
			}
		}
		return 0;
	}
解决方案:10分
你确认服务器上面和你的本地版本一样啊。
if (order.equals(“asc”)) {
System.out.println(“asc”);
if (b2 != 0) {
if(Math.min(b1, b2) == b2){
return 1;
}
}
}else{
System.out.println(“desc”);
if (b2 != 0) {
if(Math.min(b1, b2) == b1){
return 1;
}
}
}
这里面加上log 看看能否能够打印出来。
解决方案:10分
输出一下信息,排错
解决方案:40分
为啥ListMapSortComparator是个抽象类…还有map的泛型不是String,Integer….还有value是null的会出错
还有为啥要b2!=0这样判断….
好像跟出错原因都没什么关系~

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明List 排序功能实现,服务器不响应
喜欢 (0)
[1034331897@qq.com]
分享 (0)