primitive 数组克隆及反转排序
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 ) );
对象数组克隆及反转排序
Long[] array = new Long[] { new Long(3), new Long(56), new Long(233) };
Long[] reversed = ArrayUtils.clone( array );
ArrayUtils.reverse( reversed );
primitive 数组与对象数组之间的转换
long[] primitiveArray = new long[] { 12, 100, 2929, 3323 };
Long[] objectArray = ArrayUtils.toObject( primitiveArray );
Double[] doubleObjects = new Double[] { new Double( 3.22, 5.222, 3.221 ) };
double[] doublePrimitives = ArrayUtils.toPrimitive( doubleObject );
注意:对象数组可以含有null元素,primitive 数组则不容许含有null元素,所以对象数组转换为primitive 数组时,可以添入第二个参数,当碰到为null的元素时用其代替(如下,Double.NaN)。如果不添入第二个参数,当碰到为null的元素时,则会抛出NullPointerException 。
double[] result = ArrayUtils.toPrimitive( resultObjArray, Double.NaN );
查找一个数组中是否含有特定的元素(查找对象数组时,比较的是对象的equals()方法),及特定元素的第一次出现位置和最后一次出现位置
String[] stringArray = { "Red", "Orange", "Blue", "Brown", "Red" };
boolean containsBlue = ArrayUtils.contains( stringArray, "Blue" );
int indexOfRed = ArrayUtils.indexOf( stringArray, "Red");
int lastIndexOfRed = ArrayUtils.lastIndexOf( string, "Red" );
由二维对象数组创建一个 Map
Object[] weightArray =
new Object[][] { {"H" , new Double( 1.007)},
{"He", new Double( 4.002)},
{"Li", new Double( 6.941)},
{"Be", new Double( 9.012)},
{"B", new Double(10.811)},
{"C", new Double(12.010)},
{"N", new Double(14.007)},
{"O", new Double(15.999)},
{"F", new Double(18.998)},
{"Ne", new Double(20.180)} };
Map weights = ArrayUtils.toMap( weightArray );
Double hydrogenWeight = (Double)weights.get( "H" );
注意:当二维对象数组"key"值重复时,创建的Map,后面的键-值对会把前面的覆盖掉
http://www.blogjava.net/ronghao 荣浩原创,转载请注明出处:)
posted on 2005-12-13 18:48
ronghao 阅读(1357)
评论(4) 编辑 收藏 所属分类:
j2se基础