Commons lang3 包ArrayUtils类使用

来源:互联网 发布:js 设置session属性值 编辑:程序博客网 时间:2024/05/22 04:49

[java] view plaincopy
  1. package com.aimilin.test;  
  2.   
  3. import java.util.List;  
  4. import java.util.Map;  
  5.   
  6. import org.apache.commons.lang3.ArrayUtils;  
  7. import org.junit.Test;  
  8.   
  9. public class LangTest {  
  10.     // 打印数组  
  11.     public static <T> void p(T... obj) {  
  12.         if (obj == null)  
  13.             return;  
  14.         for (T t : obj) {  
  15.             System.out.println(t);  
  16.         }  
  17.     }  
  18.   
  19.     // 打印列表  
  20.     public static <T> void p(List<T> list) {  
  21.         if (list == null)  
  22.             return;  
  23.         for (T t : list) {  
  24.             System.out.println(t);  
  25.         }  
  26.     }  
  27.   
  28.     // 打印Map  
  29.     public static void p(Map<?, ?> map) {  
  30.         if (map == null)  
  31.             return;  
  32.         for (Object key : map.keySet()) {  
  33.             p("key:" + key + "\tvalue:" + map.get(key));  
  34.         }  
  35.     }  
  36.   
  37.     @Test  
  38.     public void testArrayUtils() {  
  39.         p("=============== ArrayUtils 工具类使用 ,这个类对null的输入处理很好================");  
  40.         String strs[] = { "str1""str2""str3" };  
  41.         p(ArrayUtils.add(strs, 0"测试字符串"));  
  42.         p("向数组中末尾添加元素");  
  43.         p(ArrayUtils.add(strs, "str3"));  
  44.         p("向数组指定位置添加元素");  
  45.         p(ArrayUtils.add(strs, 1"str3"));  
  46.         p("向数组中添加所有元素");  
  47.         p(ArrayUtils.addAll(strs, "str3""str4"));  
  48.         p("拷贝数组");  
  49.         p(ArrayUtils.clone(strs));  
  50.         p("数组中是否包含指定的元素");  
  51.         p(ArrayUtils.contains(strs, "str2"));  
  52.         p("获取数组的长度");  
  53.         p(ArrayUtils.getLength(strs));  
  54.         p("查找第一次出现的位置");  
  55.         p(ArrayUtils.indexOf(strs, "str2"));  
  56.         p("判断数组是否是空的");  
  57.         p(ArrayUtils.isEmpty(strs));  
  58.         p("判断数组是否非空");  
  59.         p(ArrayUtils.isNotEmpty(strs));  
  60.         p("判断数组是否相等");  
  61.         p(ArrayUtils.isEquals(strs, new String[] { "str2" }));  
  62.         p("判断数组长度是否相等");  
  63.         p(ArrayUtils.isSameLength(strs, strs));  
  64.         p("判断数组类型是否相同");  
  65.         p(ArrayUtils.isSameType(strs, new String[] { "str" }));  
  66.         p("查找数组中最后出现元素的位置");  
  67.         p(ArrayUtils.lastIndexOf(strs, "str2"));  
  68.         p("null转换成空数组");  
  69.         p(ArrayUtils.nullToEmpty(strs));  
  70.         p("从数组中移除指定索引的元素");  
  71.         p(ArrayUtils.remove(strs, 1));  
  72.         p("从数组中移除所有指定的元素");  
  73.         p(ArrayUtils.removeAll(strs, 12));  
  74.         p("移除数组中指定的元素");  
  75.         p(ArrayUtils.removeElement(strs, "str1"));  
  76.         p("移除数组中指定的所有元素");  
  77.         p(ArrayUtils.removeElements(strs, "str1""str2"));  
  78.         p("颠倒数组");  
  79.         ArrayUtils.reverse(strs);  
  80.         p(strs);  
  81.         p("子数组");  
  82.         p(ArrayUtils.subarray(strs, 02));  
  83.         p("构建数组");  
  84.         p(ArrayUtils.toArray("str1""str2"));  
  85.         p("将二维数组转换成Map");  
  86.         String mapStr[][] = { { "key1""value1" }, { "key2""value2" } };  
  87.         p(ArrayUtils.toMap(mapStr));  
  88.         p("将基本类型数组转换成包装类型");  
  89.         p(ArrayUtils.toObject(new int[] { 12345 }));  
  90.         p("将包装类型数组转换成基本类型");  
  91.         p(ArrayUtils.toPrimitive(new Integer[] { 12345 }));  
  92.         p("将数组用字符串的形式输出");  
  93.         p(ArrayUtils.toString(strs));  
  94.   
  95.     }  
  96. }  

测试结果:

[java] view plaincopy
  1. =============== ArrayUtils 工具类使用 ,这个类对null的输入处理很好================  
  2. 测试字符串  
  3. str1  
  4. str2  
  5. str3  
  6. 向数组中末尾添加元素  
  7. str1  
  8. str2  
  9. str3  
  10. str3  
  11. 向数组指定位置添加元素  
  12. str1  
  13. str3  
  14. str2  
  15. str3  
  16. 向数组中添加所有元素  
  17. str1  
  18. str2  
  19. str3  
  20. str3  
  21. str4  
  22. 拷贝数组  
  23. str1  
  24. str2  
  25. str3  
  26. 数组中是否包含指定的元素  
  27. true  
  28. 获取数组的长度  
  29. 3  
  30. 查找第一次出现的位置  
  31. 1  
  32. 判断数组是否是空的  
  33. false  
  34. 判断数组是否非空  
  35. true  
  36. 判断数组是否相等  
  37. false  
  38. 判断数组长度是否相等  
  39. true  
  40. 判断数组类型是否相同  
  41. true  
  42. 查找数组中最后出现元素的位置  
  43. 1  
  44. null转换成空数组  
  45. str1  
  46. str2  
  47. str3  
  48. 从数组中移除指定索引的元素  
  49. str1  
  50. str3  
  51. 从数组中移除所有指定的元素  
  52. str1  
  53. 移除数组中指定的元素  
  54. str2  
  55. str3  
  56. 移除数组中指定的所有元素  
  57. str3  
  58. 颠倒数组  
  59. str3  
  60. str2  
  61. str1  
  62. 子数组  
  63. str3  
  64. str2  
  65. 构建数组  
  66. str1  
  67. str2  
  68. 将二维数组转换成Map  
  69. key:key2    value:value2  
  70. key:key1    value:value1  
  71. 将基本类型数组转换成包装类型  
  72. 1  
  73. 2  
  74. 3  
  75. 4  
  76. 5  
  77. 将包装类型数组转换成基本类型  
  78. [I@95c083  
  79. 将数组用字符串的形式输出  
  80. {str3,str2,str1}  
0 0
原创粉丝点击