排序 对象数组数据 string数据顺序排序

对比方法

 1 package com.tool.com.lib;
 2 
 3 import java.text.CollationKey;
 4 import java.text.Collator;
 5 import java.util.Comparator;
 6 
 7 import com.tool.com.object.ObjectWebsite;
 8 
 9 public class SortBrowserDataByName implements Comparator {
10 

11 @Override 12 public int compare(Object o1, Object o2) { 13 ObjectWebsite stu1 = (ObjectWebsite) o1; 14 ObjectWebsite stu2 = (ObjectWebsite) o2; 15 16 // --字符串比较 17 String v1 = stu1.getName().toString(); 18 String v2 = stu2.getName().toString(); 19 Collator myCollator = Collator.getInstance(); 20 CollationKey[] keys = new CollationKey[5]; 21 keys[0] = myCollator.getCollationKey(v1); 22 keys[1] = myCollator.getCollationKey(v2); 23 return (keys[0].compareTo(keys[1])); 24 } 25 26 }

方法调用

  1 package com.tool.com.lib;
  2 
  3 import java.io.IOException;
  4 import java.util.ArrayList;
  5 import java.util.Arrays;
  6 import java.util.Iterator;
  7 import java.util.List;
  8 
  9 import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
 10 
 11 import com.alibaba.fastjson.JSON;
 12 import com.alibaba.fastjson.JSONArray;
 13 import com.alibaba.fastjson.JSONObject;
 14 import com.github.crab2died.ExcelUtils;
 15 import com.github.crab2died.exceptions.Excel4JException;
 16 import com.tool.com.object.ObjectWebsite;
 17 
 18 public class ExcelLib {
 19     //public static List<ObjectWebsite> result2 = null;
 20     public static String pathExcelString = System.getProperty("user.dir") + "\\config\\WebsiteInfo3.xlsx";
 21     //public static String pathExcelString2 = System.getProperty("user.dir") + "\\config\\WebsiteInfo3.xlsx";
 22     public static void main(String[] args) throws InvalidFormatException, Excel4JException, IOException {
 23         // TODO Auto-generated method stub
 24 //        List<ObjectWebsite> result3 = ExcelLib.getExcelData();
 25 //        System.out.println(result3.size());
 26 //        for (ObjectWebsite objectWebsite : result3) {
 27 //            objectWebsite.setComment1("9999");
 28 //        }
 29 //        ExcelLib.saveExcelData(result3);
 30         //System.out.println(Arrays.toString(result3));
 31         //getExcelData();
 32         List<ObjectWebsite> result31 = ExcelLib.getExcelData();
 33         System.out.println(result31.size());
 34         for (ObjectWebsite objectWebsite : result31) {
 35             System.out.println(objectWebsite);
 36         }
 37         //JSONArray platformList = JSON.parseArray(result31);
 38         //JSONArray.
 39         List<ObjectWebsite> result311 = ExcelLib.getExcelData();
 40         //sortBroswerDataByBootNum(result311);
 41         System.out.println("--");
 42         ObjectWebsite[] oWebsite = new ObjectWebsite[result311.size()];
 43         for (int i = 0; i < oWebsite.length; i++) {
 44             oWebsite[i] = result311.get(i);
 45         }
 46         Arrays.sort(oWebsite, new SortBrowserDataByName());
 47         for (int i = 0; i < oWebsite.length; i++) {
 48             ObjectWebsite objectWebsite = oWebsite[i];
 49             //result311.set(i, objectWebsite);
 50             System.out.println(objectWebsite);
 51         }
 52         System.out.println(result311.size());
 53     
 54     }
 55 
 56     public static List<ObjectWebsite> sortBroswerDataByBootNum(List<ObjectWebsite> result311) {
 57         ObjectWebsite[] oWebsite = new ObjectWebsite[result311.size()];
 58         for (int i = 0; i < oWebsite.length; i++) {
 59             oWebsite[i] = result311.get(i);
 60         }
 61         //System.out.println("--");
 62         Arrays.sort(oWebsite, new SortBrowserDataByBootNum());
 63         for (int i = 0; i < oWebsite.length; i++) {
 64             ObjectWebsite objectWebsite = oWebsite[i];
 65             result311.set(i, objectWebsite);
 66             //System.out.println(objectWebsite);
 67         }
 68         return result311;
 69     }
 70 
 71     public static List<ObjectWebsite> getExcelData()  {
 72         List<ObjectWebsite> result = null;
 73         //pathExcelString = pathExcelString + "\\config\\WebsiteInfo.xlsx";
 74         //System.out.println(pathExcelString);
 75         try {
 76             result = ExcelUtils.getInstance().readExcel2Objects(pathExcelString, ObjectWebsite.class);
 77         } catch (InvalidFormatException e) {
 78             // TODO Auto-generated catch block
 79             e.printStackTrace();
 80         } catch (Excel4JException e) {
 81             // TODO Auto-generated catch block
 82             e.printStackTrace();
 83         } catch (IOException e) {
 84             // TODO Auto-generated catch block
 85             e.printStackTrace();
 86         }
 87         //ExcelLib2.result2 = result;
 88         //ExcelUtils.getInstance().
 89         return result;
 90     }
 91     
 92     public static void saveExcelData(List<ObjectWebsite> result2) {
 93         try {
 94             ExcelUtils.getInstance().exportObjects2Excel(result2, ObjectWebsite.class, pathExcelString);
 95         } catch (Excel4JException e) {
 96             // TODO Auto-generated catch block
 97             e.printStackTrace();
 98         } catch (IOException e) {
 99             // TODO Auto-generated catch block
100             e.printStackTrace();
101         }
102     }
103 
104 }

 

posted @ 2020-02-16 21:28  18513757531  阅读(348)  评论(0编辑  收藏  举报