// 判断集合、数组、字符串是否为空

    1. org.springframework.util.ObjectUtils.isEmpty();
    2. System.out.println("ObjectUtils.isEmpty(\"\") = " + ObjectUtils.isEmpty(""));
    3. System.out.println("ObjectUtils.isEmpty(null) = " + ObjectUtils.isEmpty(null));
    4. System.out.println("ObjectUtils.isEmpty(new ArrayList<>()) = " + ObjectUtils.isEmpty(new ArrayList<>()));
    5. System.out.println("ObjectUtils.isEmpty(new ArrayList<>(3)) = " + ObjectUtils.isEmpty(new ArrayList<>(3)));
    6. System.out.println("ObjectUtils.isEmpty(new String[1]) = " + ObjectUtils.isEmpty(new String[1]));
    7. // ObjectUtils.isEmpty("") = true
    8. // ObjectUtils.isEmpty(null) = true
    9. // ObjectUtils.isEmpty(new ArrayList<>()) = true
    10. // ObjectUtils.isEmpty(new ArrayList<>(3)) = true
    11. // ObjectUtils.isEmpty(new String[1]) = false

    // 快速批量添加元素到集合中

    1. // 快速批量添加元素到集合中(可多次添加)
    2. List<String> list1 = org.assertj.core.util.Lists.newArrayList("1", "2");
    3. list1.add("3");
    4. System.out.println("list1 = " + list1);
    5. // 快速批量添加元素到集合中(只能添加一次,再次添加则报错)
    6. List<String> list2 = Arrays.asList("1", "2");
    7. list2.add("3");// Exception in thread "main" java.lang.UnsupportedOperationException
    8. System.out.println("list2 = " + list2);

    // 获取交集的坑
    使用 listA.retailAll(listB) 获取交集的坑
    eg. listA.retainAll(_listB)_;
    如果存在相同元素,listA 中仅保留相同的元素。
    如果不存在相同元素,listB 会变为空。
    结论:强烈不建议使用 retainAll 方法。

    MySQL 中函数 GROUP_CONCAT 的坑
    SELECT GROUP_CONCAT(id) FROM user
    当 GROUP_CONCAT 的字符串长度超过一定界限之后,将会舍弃后续数据。