Google Guava开源工具类库常用方法介绍

本文来说下Google Guava开源工具类库常用方法使用


概述

Guava 是一组来自 Google 的核心 Java 库,包括新的集合类型(如 multimap 和 multiset)、不可变集合、图形库以及用于并发、I/O、散列、缓存、原语、字符串等的实用程序!被广泛应用于 Google 的大多数 Java 项目中,也被许多其他公司广泛使用。

工具类 就是封装平常用的方法,不需要你重复造轮子,节省开发人员时间,提高工作效率。谷歌作为大公司,当然会从日常的工作中提取中很多高效率的方法出来。所以就诞生了 guava

  • 高效设计良好的 API,被 Google 的开发者设计,实现和使用
  • 遵循高效的 java 语法实践
  • 使代码更刻度,简洁,简单
  • 节约时间,资源,提高生产力

其次,Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库,例如:

  • 集合 [collections]
  • 缓存 [caching]
  • 原生类型支持 [primitives support]
  • 并发库 [concurrency libraries]
  • 通用注解 [common annotations]
  • 字符串处理 [string processing]
  • I/O 等等。

如何使用

首先导入Google guava依赖:

<dependency>
     <groupId>com.google.guava</groupId>
     <artifactId>guava</artifactId>
     <version>21.0</version>
</dependency>

常用操作

创建集合

package com.wideth.guava;

import com.google.common.collect.*;
import lombok.extern.slf4j.Slf4j;
import java.util.List;
import java.util.Map;
import java.util.Set;

@Slf4j
public class Main1 {

    public static void main(String[] args) {

        // 普通Collection的创建
        List<String> arrayList = Lists.newArrayList();
        Set<String> set = Sets.newHashSet();
        Map<String, String> map = Maps.newHashMap();

         //不变Collection的创建
        ImmutableList<String> immutableList = ImmutableList.of("a", "b", "c");
        log.info(immutableList.toString());
        ImmutableSet<String> immutableSet = ImmutableSet.of("e1", "e2");
        log.info(immutableSet.toString());
        ImmutableMap<String, String> immutableMap =
                ImmutableMap.of("k1", "v1", "k2", "v2");
        log.info(immutableMap.toString());
    }
}

程序结果

在这里插入图片描述

创建不可变集合,先理解什么是immutable(不可变)对象:

  • 在多线程操作下,是线程安全的;
  • 所有不可变集合会比可变集合更有效的利用资源;
  • 中途不可改变;

一个不可变的 ImmutableXxx 集合可以通过以下几种方式创建:

  • 使用 copyOf 方法,如 ImmutableSet.copyOf(set)
  • 使用 of 方法, 如 ImmutableSet.of(“a”, “b”, “c”) 或 ImmutableMap.of(“a”, 1, “b”, 2)
  • 使用 Builder 方法,。

本文小结

本文介绍了Google Guava开源工具类库常用方法

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值