Java 常用工具类

1.java.util.Collections

排序、最大值、最小值、转不可修改集合、转线程安全集合、空集合、二分查找....

    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        list.add(2);
        list.add(1);
        list.add(3);
        Collections.sort(list);                                         // 升序
        Collections.reverse(list);                                      // 降序(先升后降)
        Integer max = Collections.max(list);                            //获取最大值
        Integer min = Collections.min(list);                            //获取最小值
        List<Integer> integers1 = Collections.synchronizedList(list);   //将ArrayList转换成线程安全集合
        Collections.emptyList();                                        //空集合
        int i = Collections.binarySearch(list, 3);                      //二分查找
        List<Integer> integers2 = Collections.unmodifiableList(list);   //转换成不可修改集合
    }

2.Apache CollectionUtils

判空、合并集合【并集,交集...】

    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        list.add(2);
        list.add(1);
        list.add(3);

        List<Integer> list1 = new ArrayList<>();
        list1.add(2);
        list1.add(4);

        CollectionUtils.isEmpty(list);      //判空
        CollectionUtils.isNotEmpty(list);   //非空

        //获取并集
        Collection<Integer> unionList = CollectionUtils.union(list, list1);
        System.out.println(unionList);

        //获取交集
        Collection<Integer> intersectionList = CollectionUtils.intersection(list, list1);
        System.out.println(intersectionList);

        //获取交集的补集
        Collection<Integer> disjunctionList = CollectionUtils.disjunction(list, list1);
        System.out.println(disjunctionList);

        //获取差集
        Collection<Integer> subtractList = CollectionUtils.subtract(list, list1);
        System.out.println(subtractList);
    }

3. com.google.common.collect.Lists 

创建集合、笛卡尔积、分页、流处理、逆序

    public static void main(String[] args) {
        List<Integer> list1 = Lists.newArrayList();                             // 创建空集合
        List<Integer> list2 = Lists.newArrayList(1, 2, 3);           // 快速初始化集合
        List<List<Integer>> productList = Lists.cartesianProduct(list1, list2);  // 笛卡尔积
        List<List<Integer>> partitionList = Lists.partition(list2, 2);     // 分页
        List<String> transformList = Lists.transform(list1, x -> x + "");         // 流处理
        List<Integer> reverseList = Lists.reverse(list2);                       // 颠倒顺序
    }

4.java.util.Objects

判null、对象是否相等、或HashCode

    public static void main(String[] args) {
        Objects.isNull(null);                                 // 判null
        Objects.requireNonNull(null,"参数不能为空");   // 判null、抛异常
        Integer a = 1200;
        Integer b = 1200;
        System.out.println(Objects.equals(a, b));                   // 判断两个对象是否相等
        Objects.hashCode("str");                                // 获取对象的hashCode
    }

5.org.apache.commons.lang3.BooleanUtils

True/false判断、转数字

    public static void main(String[] args) {
        // 判断true或false
        BooleanUtils.isTrue(Boolean.TRUE);
        BooleanUtils.isNotTrue(Boolean.TRUE);
        BooleanUtils.isFalse(Boolean.FALSE);
        BooleanUtils.isNotFalse(Boolean.FALSE);
        // 转换成数字
        BooleanUtils.toInteger(Boolean.TRUE);
    }

6.org.apache.commons.lang3.StringUtils 

判空、分割字符串、纯数字判断、集合转字符串

 public static void main(String[] args) {
        // ""," ","null 判断
        StringUtils.isEmpty("");
        StringUtils.isNotEmpty("");
        StringUtils.isBlank("");
        StringUtils.isNotBlank("");
        // 分隔字符串 str1.split(",") 空指针异常
        StringUtils.split(null,",");
        // 判断是否纯数字
        StringUtils.isNumeric("123");
        // 将集合拼接成字符串
        StringUtils.join(Lists.newArrayList("a", "b", "c"), ",");
    }

7.org.apache.commons.io.IOUtils

读取文件、写入文件、拷贝文件

    public static void main(String[] args) {
        // 读取文件
        String str = IOUtils.toString(new FileInputStream("/a.txt"), StandardCharsets.UTF_8);
        // 写入文件
        IOUtils.write("243", new FileOutputStream("/b.txt"), StandardCharsets.UTF_8);
        // 文件拷贝
        IOUtils.copy(new FileInputStream("/a.txt"), new FileOutputStream("/b.txt"));
        // 文件拷贝
        IOUtils.copy(new FileInputStream("/a.txt"), new FileOutputStream("/b.txt"));
    }

8.org.apache.commons.codec.digestDigestUtils

MD5 /SHA 加密

    public static void main(String[] args) {
        // MD5 加密
        String md5Hex = DigestUtils.md5Hex("123");
        // SHA256 加密
        String sha256Hex = DigestUtils.sha256Hex("123");
    }

9.org.springframework.util.SerializationUtils

序列化、反序列化

    public static void main(String[] args) {
        Map<String, String> map = Maps.newHashMap();
        map.put("k", "v");
        byte[] serialize = SerializationUtils.serialize(map);
        Object deserialize = SerializationUtils.deserialize(serialize);
        System.out.println(deserialize);
    }

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值