1.commons-lang.jar中提供了CompareToBuilder类,用于比较两个对象
public int compareTo(Object o){ int compare=-1; if(o!=null&&Person.class.isAssignableFrom(o.getClass())){ Person p=(Person)o; compare=new CompareToBuilder().append(name,p.getName()).append(addr, p.getAddr()).toComparison(); } return compare; }
2.ArrayUtils.toString用于把数组作为字符串输出
public void testToArrays(){ int[] intArray = new int[] { 2, 3, 4, 5, 6 }; int[][] multiDimension = new int[][] { { 1, 2, 3 }, { 2, 3 }, {5, 6, 7} }; String[] strings = new String[] { "Blue", "Green", null, "Yellow" }; List list = new ArrayList( ); list.add( "Foo" ); list.add( "Blah" ); System.out.println( ArrayUtils.toString( list.toArray( ) ) ); System.out.println(ArrayUtils.toString(intArray)); System.out.println(ArrayUtils.toString(multiDimension)); System.out.println( "Strings: " + ArrayUtils.toString(strings, "Unknown")); }
{2,3,4,5,6}
{{1,2,3},{2,3},{5,6,7}}
Strings: {Blue,Green,<null>,Yellow}
3.数组克隆和反转
public void testCloneAndReverse(){ long[] array = { 1, 3, 2, 3, 5, 6 }; long[] reversed = ArrayUtils.clone(array); ArrayUtils.reverse(reversed); System.out.println("Original: " + ArrayUtils.toString(array)); System.out.println("Reversed: " + ArrayUtils.toString(reversed)); }
4.Transforming Between Object Arraysand Primitive Arrays
public void testToObject(){ long[] primitiveArray = new long[] { 12, 100, 2929, 3323 }; Long[] objectArray = ArrayUtils.toObject(primitiveArray); Double[] doubleObjects = new Double[] { new Double(3.22) }; double[] doublePrimitives = ArrayUtils.toPrimitive(doubleObjects); }
5.Finding Items in an Array
public void testContains(){ String[] stringArray = { "Red", "Orange", "Blue", "Brown", "Red" }; boolean containsBlue = ArrayUtils.contains(stringArray, "Blue"); int indexOfRed = ArrayUtils.indexOf(stringArray, "Red"); int lastIndexOfRed = ArrayUtils.lastIndexOf(stringArray, "Red"); System.out.println("Array contains 'Blue'? " + containsBlue); System.out.println("Index of 'Red'? " + indexOfRed); System.out.println("Last Index of 'Red'? " + lastIndexOfRed); }
Array contains 'Blue'? true
Index of 'Red'? 0
Last Index of 'Red'? 4