SortUtil 对象属性排序类

关于对象属性之间的排序:

比如 Person 中 年龄的倒序排序 就需要使用这个:

package com.test.util;

import java.util.Collections;
import java.util.Comparator;
import java.util.LinkedList;
import java.util.List;



public class SortUtil {
	
	private SortUtil (){};
	
	private static SortUtil sortUtil=null;
	
	public static SortUtil getInstance(){
		
		if(sortUtil==null){
			sortUtil=new SortUtil();
		}
		return sortUtil;
	}
	/**
     * 排序(降序 )的 方法  并 截取掉  大于10 的 数据  饼形图
     */
    public LinkedList<BotNet> sort(LinkedList<BotNet> listTemp){
    	// 升序 排列
    			Collections.sort( listTemp, new Comparator<BotNet>(){//list
    				@Override
    				public int compare(BotNet b1, BotNet b2) {
    					if(b1.getNu()>b2.getNu())return -1;
    					else if(b1.getNu()<b2.getNu())return 1;
    					else return 0;
    				}
    			});
    			if(listTemp.size()>5){
    				LinkedList<BotNet> temp = new LinkedList<BotNet>(); 
    				for(int i=0;i<=4;i++){
    					temp.add(listTemp.get(i));
    				}
    				listTemp=temp;
    			}
    			return listTemp;
    }
    /**
     * 排序(降序 )的 方法  并 截取掉  大于10 的 数据  饼形图
     */
    public LinkedList<BotNet> descSort7(LinkedList<BotNet> listTemp){
    	// 升序 排列
    	Collections.sort( listTemp, new Comparator<BotNet>(){//list
    		@Override
    		public int compare(BotNet b1, BotNet b2) {
    			if(b1.getNu()>b2.getNu())return -1;
    			else if(b1.getNu()<b2.getNu())return 1;
    			else return 0;
    		}
    	});
    	if(listTemp.size()>7){
    		LinkedList<BotNet> temp = new LinkedList<BotNet>(); 
    		for(int i=0;i<=6;i++){
    			temp.add(listTemp.get(i));
    		}
    		listTemp=temp;
    	}
    	return listTemp;
    }
    /**
     * 排序(降序 )的 方法  并 截取掉  大于10 的 数据  饼形图
     */
    public LinkedList<BotNet> descSort10(LinkedList<BotNet> listTemp){
    	// 升序 排列
    	Collections.sort( listTemp, new Comparator<BotNet>(){//list
    		@Override
    		public int compare(BotNet b1, BotNet b2) {
    			if(b1.getNu()>b2.getNu())return -1;
    			else if(b1.getNu()<b2.getNu())return 1;
    			else return 0;
    		}
    	});
    	if(listTemp.size()>10){
    		LinkedList<BotNet> temp = new LinkedList<BotNet>(); 
    		for(int i=0;i<=9;i++){
    			temp.add(listTemp.get(i));
    		}
    		listTemp=temp;
    	}
    	return listTemp;
    }
    
    /**
     * 排序(降序 )的 方法  并 截取掉  大于10 的 数据  饼形图
     */
    public LinkedList<BotNet> descSortPager(LinkedList<BotNet> listTemp,int pagerNumber ,int pagerSize){
    	// 升序 排列
    	Collections.sort( listTemp, new Comparator<BotNet>(){//list
    		@Override
    		public int compare(BotNet b1, BotNet b2) {
    			if(b1.getNu()>b2.getNu())return -1;
    			else if(b1.getNu()<b2.getNu())return 1;
    			else return 0;
    		}
    	});
    	int all = pagerNumber*pagerSize;
    	int startIndex = (pagerNumber-1)*pagerSize;
    	int endIndex = pagerNumber*pagerSize -1;
    	if(pagerNumber == 1 && listTemp.size() <= pagerSize){
    		
    		return listTemp;
    	}
    	if(pagerNumber >1 && listTemp.size()<=all){
    		LinkedList<BotNet> list = new LinkedList<BotNet>();
    		for(int i=startIndex;i<listTemp.size();i++){
    			list.add(listTemp.get(i));
    		}
    		listTemp = list;
    	}
    	if(pagerNumber >1 && listTemp.size()>all){
    		LinkedList<BotNet> list = new LinkedList<BotNet>();
    		for(int i=startIndex;i<=endIndex;i++){
    			list.add(listTemp.get(i));
    		}
    		listTemp = list;
    	}
    	return listTemp;
    }
    /**
     * 排序(降序 )的 方法  、首页右侧地图 数据
     */
    public LinkedList<BotNet> sort2(LinkedList<BotNet> listTemp){
    	// 升序 排列
    	Collections.sort( listTemp, new Comparator<BotNet>(){//list
    		@Override
    		public int compare(BotNet b1, BotNet b2) {
    			if(b1.getNu()>b2.getNu())return -1;
    			else if(b1.getNu()<b2.getNu())return 1;
    			else return 0;
    		}
    	});
    	
    	return listTemp;
    }
    
    
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: public class SortInt { public int[] sort(int[] nums) { int temp; for (int i = 0; i < nums.length; i++) { for (int j = i + 1; j < nums.length; j++) { if (nums[i] > nums[j]) { temp = nums[i]; nums[i] = nums[j]; nums[j] = temp; } } } return nums; } } ### 回答2: 这是一个用Java编写的,其包含一个sort()方法,用于对传入的整数进行排序并从小到大输出。完整代码如下: ```java import java.util.Arrays; public class SortClass { public static void sort(int[] nums) { Arrays.sort(nums); for (int num : nums) { System.out.print(num + " "); } } public static void main(String[] args) { int[] nums = {5, 3, 9, 1, 7}; sort(nums); } } ``` 在这个,我们首先导入了`java.util.Arrays`,以便使用其排序方法。然后,我们定义了一个静态方法`sort()`,它接受一个整数数组作为参数。在方法,我们使用`Arrays.sort()`方法对传入的整数数组进行排序。最后,我们使用增强型for循环遍历排序后的数组,并使用`System.out.print()`逐个输出每个排序后的整数。在`main()`方法,我们创建一个整数数组`nums`并初始化其值。然后,我们调用`sort()`方法并将`nums`作为参数传递给它,实现对整数数组的排序和输出。 ### 回答3: 下面是一个使用Java编写的,其包含一个方法sort(),能够对传入的整数数组进行排序,并按照从小到大的顺序输出。 ```java public class SortUtil { public static void sort(int[] nums) { int n = nums.length; for (int i = 0; i < n-1; i++) { for (int j = 0; j < n-i-1; j++) { if (nums[j] > nums[j+1]) { int temp = nums[j]; nums[j] = nums[j+1]; nums[j+1] = temp; } } } System.out.println("排序结果为:"); for (int i = 0; i < n; i++) { System.out.print(nums[i] + " "); } System.out.println(); } public static void main(String[] args) { int[] nums = {6, 3, 9, 2, 1, 7, 4, 5, 8}; sort(nums); // 调用sort()方法对整数数组进行排序 } } ``` 以上代码,使用冒泡排序的算法对传入的整数数组进行排序sort()方法的参数是一个整数数组,在方法使用两个嵌套的循环进行比较和交换操作,最终得到排序后的数组。在main()方法创建一个示例的整数数组,并调用sort()方法进行排序排序完成后,使用循环遍历并打印排序结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值