看到上面的图片,再说一下int与BigDecimal如何互相转换。 1)int 转换为BigDecimal:int a = 1;BigDecimal b = new BigDecimal(a);2)BigDecimal转换为int:BigDecimal b = new BigDecimal(123.456);int a = b.intValue();//此时a的值为123
5
下面说一个比较通过的Java list 排序方法。缺点就是需要知道要比较的对象的类型有哪些。
6
public void sort(List list, final String method, final String sort) { if (list != null) { Collections.sort(list, new Comparator() { public int compare(Object a, Object b) { int result = 0; try { Method m1 = a.getClass().getMethod(method, null); Method m2 = b.getClass().getMethod(method, null); Object obj1 = m1.invoke(a, null); Object obj2 = m2.invoke(b, null); if(obj1 instanceof Integer){ if (sort != null && 'desc'.equals(sort))// 倒序 result= new Integer((int) obj2).compareTo( new Integer((int) obj1)); else// 正序 result= new Integer((int) obj1).compareTo(new Integer((int) obj2)); } else if( obj1 instanceof Date){ if (sort != null && 'desc'.equals(sort))// 倒序 result= ((Date) obj2).compareTo((Date) obj1); else// 正序 result= ((Date) obj1).compareTo((Date) obj2); } else{ if (sort != null && 'desc'.equals(sort))// 倒序 result= obj2.toString().compareTo(obj1.toString()); else// 正序 result= obj1.toString().compareTo(obj2.toString()); } } catch (Exception e) { e.printStackTrace(); } return result; } }); } }