Posted on 2010-01-14 18:43
leekiang 阅读(798)
评论(0) 编辑 收藏 所属分类:
java 、
commons
1,List转数组
List list = new ArrayList();
list.add("1");
list.add("2");
int size = list.size();
String[] arr = (String[]) list.toArray(new String[size]);
必须带参数new String[size],否则会报造型异常
2, 数组转List
String[] arr = new String[] {"1", "2"};
List list = Arrays.asList(arr);
3, Arrays.binarySearch(Object[] arr,Object key)
public static int binarySearch(int[] a,int key)使用二进制搜索算法来搜索指定的 int 型数组,以获得指定的值。必须在进行此调用之前对数组进行排序(通过上面的 sort 方法)。如果没有对数组进行排序,则结果是不明确的。如果数组包含多个带有指定值的元素,则无法保证找到的是哪一个。
也就是说必须先执行Arrays.sort,再执行Arrays.binarySearch
4, commons-lang的ArrayUtils
1)ArrayUtils.contains()方法可以判定数组是否存在指完元素.比Arrays.binarySearch好用(见上文)
当然有两个比较实用的方法ArrayUtils.lastIndexOf()和ArrayUtils.indexOf()
3)使用ArrayUtils.reverse(arr)方法可以反转一个数组
4)使用ArrayUtils.toObject(arr)和ArrayUtils.toPrimitive(arr)两个方法,
即可互相转换基本类型数组和对象数组
5)ArrayUtils.toString()方法可以输入数组内容,此方法接受任意一个数组
作为参数并输出其内容,输出时所有元素位于大括号,中间逗号隔开。
如new String[] { "1","2","3","fd","3g"}会输出为字符串"{1,2,3,fd,3g}"
6)// 判断数组是否为空(null和length=0的时候都为空)
ArrayUtils.isEmpty(new int[0]);// true
ArrayUtils.isEmpty(new Object[] { null });// false
7)// 合并两个数组
ArrayUtils.addAll(new int[] { 1, 3, 5 }, new int[] { 2, 4 });// {1,3,5,2,4}
8)// 删除数组中某个对象(从正序开始搜索,删除第一个) 注意只删除一个
ArrayUtils.removeElement(new int[] { 1, 3, 5 }, 3);// {1,5}