- package com.aimilin.test;
- import java.util.List;
- import java.util.Map;
- import org.apache.commons.lang3.ArrayUtils;
- import org.junit.Test;
- public class LangTest {
- // 打印数组
- public static <T> void p(T... obj) {
- if (obj == null)
- return;
- for (T t : obj) {
- System.out.println(t);
- }
- }
- // 打印列表
- public static <T> void p(List<T> list) {
- if (list == null)
- return;
- for (T t : list) {
- System.out.println(t);
- }
- }
- // 打印Map
- public static void p(Map<?, ?> map) {
- if (map == null)
- return;
- for (Object key : map.keySet()) {
- p("key:" + key + "\tvalue:" + map.get(key));
- }
- }
- @Test
- public void testArrayUtils() {
- p("=============== ArrayUtils 工具类使用 ,这个类对null的输入处理很好================");
- String strs[] = { "str1", "str2", "str3" };
- p(ArrayUtils.add(strs, 0, "测试字符串"));
- p("向数组中末尾添加元素");
- p(ArrayUtils.add(strs, "str3"));
- p("向数组指定位置添加元素");
- p(ArrayUtils.add(strs, 1, "str3"));
- p("向数组中添加所有元素");
- p(ArrayUtils.addAll(strs, "str3", "str4"));
- p("拷贝数组");
- p(ArrayUtils.clone(strs));
- p("数组中是否包含指定的元素");
- p(ArrayUtils.contains(strs, "str2"));
- p("获取数组的长度");
- p(ArrayUtils.getLength(strs));
- p("查找第一次出现的位置");
- p(ArrayUtils.indexOf(strs, "str2"));
- p("判断数组是否是空的");
- p(ArrayUtils.isEmpty(strs));
- p("判断数组是否非空");
- p(ArrayUtils.isNotEmpty(strs));
- p("判断数组是否相等");
- p(ArrayUtils.isEquals(strs, new String[] { "str2" }));
- p("判断数组长度是否相等");
- p(ArrayUtils.isSameLength(strs, strs));
- p("判断数组类型是否相同");
- p(ArrayUtils.isSameType(strs, new String[] { "str" }));
- p("查找数组中最后出现元素的位置");
- p(ArrayUtils.lastIndexOf(strs, "str2"));
- p("null转换成空数组");
- p(ArrayUtils.nullToEmpty(strs));
- p("从数组中移除指定索引的元素");
- p(ArrayUtils.remove(strs, 1));
- p("从数组中移除所有指定的元素");
- p(ArrayUtils.removeAll(strs, 1, 2));
- p("移除数组中指定的元素");
- p(ArrayUtils.removeElement(strs, "str1"));
- p("移除数组中指定的所有元素");
- p(ArrayUtils.removeElements(strs, "str1", "str2"));
- p("颠倒数组");
- ArrayUtils.reverse(strs);
- p(strs);
- p("子数组");
- p(ArrayUtils.subarray(strs, 0, 2));
- p("构建数组");
- p(ArrayUtils.toArray("str1", "str2"));
- p("将二维数组转换成Map");
- String mapStr[][] = { { "key1", "value1" }, { "key2", "value2" } };
- p(ArrayUtils.toMap(mapStr));
- p("将基本类型数组转换成包装类型");
- p(ArrayUtils.toObject(new int[] { 1, 2, 3, 4, 5 }));
- p("将包装类型数组转换成基本类型");
- p(ArrayUtils.toPrimitive(new Integer[] { 1, 2, 3, 4, 5 }));
- p("将数组用字符串的形式输出");
- p(ArrayUtils.toString(strs));
- }
- }
测试结果:
- =============== ArrayUtils 工具类使用 ,这个类对null的输入处理很好================
- 测试字符串
- str1
- str2
- str3
- 向数组中末尾添加元素
- str1
- str2
- str3
- str3
- 向数组指定位置添加元素
- str1
- str3
- str2
- str3
- 向数组中添加所有元素
- str1
- str2
- str3
- str3
- str4
- 拷贝数组
- str1
- str2
- str3
- 数组中是否包含指定的元素
- true
- 获取数组的长度
- 3
- 查找第一次出现的位置
- 1
- 判断数组是否是空的
- false
- 判断数组是否非空
- true
- 判断数组是否相等
- false
- 判断数组长度是否相等
- true
- 判断数组类型是否相同
- true
- 查找数组中最后出现元素的位置
- 1
- null转换成空数组
- str1
- str2
- str3
- 从数组中移除指定索引的元素
- str1
- str3
- 从数组中移除所有指定的元素
- str1
- 移除数组中指定的元素
- str2
- str3
- 移除数组中指定的所有元素
- str3
- 颠倒数组
- str3
- str2
- str1
- 子数组
- str3
- str2
- 构建数组
- str1
- str2
- 将二维数组转换成Map
- key:key2 value:value2
- key:key1 value:value1
- 将基本类型数组转换成包装类型
- 1
- 2
- 3
- 4
- 5
- 将包装类型数组转换成基本类型
- [I@95c083
- 将数组用字符串的形式输出
- {str3,str2,str1}