乙巳🐍年

acc8226 的博客

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

Guava 有两种风格:

  1. JRE 风格需要 JDK 1.8 或更高版本。
  2. 如果你需要 Android 的支持,使用 Android 风格。您可以在 Android 目录中找到 AndroidGuava 源代码。

ImmutableSet

1
compile 'com.google.guava:guava:30.0-jre'
阅读全文 »

Hutool — A set of tools that keep Java sweet.
https://www.hutool.cn/

Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关 API 的学习成本,提高工作效率,使 Java 拥有函数式语言般的优雅,让Java 语言也可以“甜甜的”。

一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML 等 JDK 方法进行封装,组成各种 Util 工具类,同时提供以下组件:

  • hutool-aop JDK动态代理封装,提供非IOC下的切面支持
  • hutool-bloomFilter 布隆过滤,提供一些Hash算法的布隆过滤
  • hutool-cache 简单缓存实现
  • hutool-core 核心,包括Bean操作、日期、各种Util等
  • hutool-cron 定时任务模块,提供类 Crontab 表达式的定时任务
  • hutool-crypto 加密解密模块,提供对称、非对称和摘要算法封装
  • hutool-db JDBC 封装后的数据操作,基于 ActiveRecord 思想
  • hutool-dfa 基于 DFA 模型的多关键字查找
  • hutool-extra 扩展模块,对第三方封装(模板引擎、邮件、Servlet、二维码、Emoji、FTP、分词等)
  • hutool-http 基于 HttpUrlConnection 的 Http 客户端封装
  • hutool-log 自动识别日志实现的日志门面
  • hutool-script 脚本执行封装,例如Javascript
  • hutool-setting 功能更强大的 Setting 配置文件和 Properties 封装
  • hutool-system 系统参数调用封装(JVM信息等)
  • hutool-json JSON实现
  • hutool-captcha 图片验证码实现
  • hutool-poi 针对 POI 中 Excel 和 Word 的封装
  • hutool-socket 基于 Java 的 NIO 和 AIO 的 Socket 封装
  • hutool-jwt JSON Web Token (JWT)封装实现
阅读全文 »

集合框架体系概述

1. 为什么出现集合类?
方便多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方法

2. 数组和集合类有何不可?

  • 数组虽然也可存储对象,但长度固定; 而集合长度可变
  • 集合只用于存储对象,集合长度是可变的, 集合可以存储不同类型的对象

Java 集合定义了两种基本的数据结构,一种是 Collection,表示一组对象的集合;另一种是 Map,表示对象间的一系列映射或关联关系。Java 集合的基本架构如下图。

集合类及其继承关系

在这种架构中,Set 是一种 Collection,不过其中没有重复的对象;List 也是一种 Collection ,其中的元素按顺序排列(允许有重复)。
SortedSetSortedMap 是特殊的集和映射,其中的元素按顺序排列。
CollectionSetListMapSortedSetSortedMap 都是接口,不过 java.util 包定义了多个具体实现,例如基于数组和链表的列表,基于哈希表或二叉树的映射和集。除此之外,还有两个重要的接口, Iterator 和 Iterable ,用于遍历集合中的对象,稍后会介绍。

阅读全文 »

为什么要学 Kotlin

要想知道为什么 Kotlin 广受欢迎,首先要理解 Java 在现代软件开发领域中所扮演的角色。这两门语言联系得非常紧密,因为很多时候,Kotlin 代码的开发目标就是要在 Java 虚拟机上运行。

Java 语言比较稳健,久经考验。多年来,它一直是最常用的一种编程语言,造就了庞大的生产代码库。自从 1995 年 Java 问世以来,对于优秀的编程语言应满足什么条件,人们已通过实践积攒了很多经验教训。然而 Java 却裹足不前,开发者喜欢的很多现代语言高级特性,它都没有,或者迟迟才加入。

Kotlin 从这些经验教训中受益良多,而 Java(和其他语言,比如 Scala)中的某些早期设计却愈显陈旧。脱胎于旧语言,Kotlin 解决了它们的很多痛点,进化成了一门优秀的语言。相比 Java,Kotlin 进步巨大,带来了更可靠的开发体验。

作为一门新秀语言,Kotlin 不仅支持编写代码在虚拟机上运行,而且还是一门跨平台的通用型语言:你可以用 Kotlin 开发各种类型的原生应用,如 macOS 应用、Windows 应用、JavaScript 应用,当然还有 Android 应用。平台独立性意味着 Kotlin 有各种各样的用途。

Kotlin 语言特点

简洁、安全、支持函数式编程、支持面向对象、Java 具有良好的互操作性、免费开源。

阅读全文 »
0%