排序 对象数组数据 int数据顺序排序
对比函数定义
1 package com.tool.com.lib; 2 3 import java.util.Comparator; 4 5 import com.tool.com.object.ObjectWebsite; 6 7 public class SortBrowserDataByBootNum implements Comparator { 8 9 @Override 10 public int compare(Object o1, Object o2) { 11 ObjectWebsite stu1 = (ObjectWebsite) o1; 12 ObjectWebsite stu2 = (ObjectWebsite) o2; 13 return Integer.valueOf(stu1.getBoogNum())- Integer.valueOf(stu2.getBoogNum()); 14 } 15 16 }
最后数据对比时方法调用
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 ObjectWebsite[] oWebsite = new ObjectWebsite[result31.size()]; 40 for (int i = 0; i < oWebsite.length; i++) { 41 oWebsite[i] = result31.get(i); 42 } 43 System.out.println("--"); 44 Arrays.sort(oWebsite, new SortBrowserDataByBootNum()); 45 for (int i = 0; i < oWebsite.length; i++) { 46 ObjectWebsite objectWebsite = oWebsite[i]; 47 System.out.println(objectWebsite); 48 } 49 50 } 51 52 public static List<ObjectWebsite> getExcelData() { 53 List<ObjectWebsite> result = null; 54 //pathExcelString = pathExcelString + "\\config\\WebsiteInfo.xlsx"; 55 //System.out.println(pathExcelString); 56 try { 57 result = ExcelUtils.getInstance().readExcel2Objects(pathExcelString, ObjectWebsite.class); 58 } catch (InvalidFormatException e) { 59 // TODO Auto-generated catch block 60 e.printStackTrace(); 61 } catch (Excel4JException e) { 62 // TODO Auto-generated catch block 63 e.printStackTrace(); 64 } catch (IOException e) { 65 // TODO Auto-generated catch block 66 e.printStackTrace(); 67 } 68 //ExcelLib2.result2 = result; 69 //ExcelUtils.getInstance(). 70 return result; 71 } 72 73 public static void saveExcelData(List<ObjectWebsite> result2) { 74 try { 75 ExcelUtils.getInstance().exportObjects2Excel(result2, ObjectWebsite.class, pathExcelString); 76 } catch (Excel4JException e) { 77 // TODO Auto-generated catch block 78 e.printStackTrace(); 79 } catch (IOException e) { 80 // TODO Auto-generated catch block 81 e.printStackTrace(); 82 } 83 } 84 85 }
数据对象模板
1 package com.tool.com.object; 2 3 import com.github.crab2died.annotation.ExcelField; 4 5 public class ObjectWebsite { 6 @ExcelField(title = "功能模块") 7 String functionMode=""; 8 @ExcelField(title = "启动次数") 9 String boogNum=""; 10 @ExcelField(title = "编号") 11 String no=""; 12 @ExcelField(title = "名称") 13 String name=""; 14 @ExcelField(title = "账号信息") 15 String accountInfo=""; 16 @ExcelField(title = "关联手机1") 17 String phone1=""; 18 @ExcelField(title = "关联邮箱1") 19 String email1=""; 20 @ExcelField(title = "关联手机2") 21 String phone2=""; 22 @ExcelField(title = "关联邮箱2") 23 String email2=""; 24 @ExcelField(title = "地址") 25 String link=""; 26 @ExcelField(title = "备注1") 27 String comment1=""; 28 @ExcelField(title = "备注2") 29 String comment2=""; 30 public String getFunctionMode() { 31 return functionMode; 32 } 33 public void setFunctionMode(String functionMode) { 34 this.functionMode = functionMode; 35 } 36 public String getBoogNum() { 37 return boogNum; 38 } 39 public void setBoogNum(String boogNum) { 40 this.boogNum = boogNum; 41 } 42 public String getNo() { 43 return no; 44 } 45 public void setNo(String no) { 46 this.no = no; 47 } 48 public String getName() { 49 return name; 50 } 51 public void setName(String name) { 52 this.name = name; 53 } 54 public String getAccountInfo() { 55 return accountInfo; 56 } 57 public void setAccountInfo(String accountInfo) { 58 this.accountInfo = accountInfo; 59 } 60 public String getPhone1() { 61 return phone1; 62 } 63 public void setPhone1(String phone1) { 64 this.phone1 = phone1; 65 } 66 public String getEmail1() { 67 return email1; 68 } 69 public void setEmail1(String email1) { 70 this.email1 = email1; 71 } 72 public String getPhone2() { 73 return phone2; 74 } 75 public void setPhone2(String phone2) { 76 this.phone2 = phone2; 77 } 78 public String getEmail2() { 79 return email2; 80 } 81 public void setEmail2(String email2) { 82 this.email2 = email2; 83 } 84 public String getLink() { 85 return link; 86 } 87 public void setLink(String link) { 88 this.link = link; 89 } 90 public String getComment1() { 91 return comment1; 92 } 93 public void setComment1(String comment1) { 94 this.comment1 = comment1; 95 } 96 public String getComment2() { 97 return comment2; 98 } 99 public void setComment2(String comment2) { 100 this.comment2 = comment2; 101 } 102 @Override 103 public String toString() { 104 return "ObjectWebsite [functionMode=" + functionMode + ", boogNum=" + boogNum + ", no=" + no + ", name=" + name 105 + ", accountInfo=" + accountInfo + ", phone1=" + phone1 + ", email1=" + email1 + ", phone2=" + phone2 106 + ", email2=" + email2 + ", link=" + link + ", comment1=" + comment1 + ", comment2=" + comment2 + "]"; 107 } 108 109 110 }