日常开发中,小黑哥经常需要用到 Java 提供集合类完成各种需求.Java 集合类虽然非常强大实用,但是提供功能还是有点薄弱. 举个例子,小黑哥最近接到一个需求,从输入一个文档中,统计一个关键词出现的次数.代码如下: 虽然这个需求使用 Map 可以轻松搞定,但是小黑哥还是觉得这种写法有点笨拙,如果没有判空,将会导致 NPE 异常. 如果很多地方需要功能,我们就可以抽象出来,将其封装成工具类. 不过上面的功能大家就不需要自己封装,一款来自 Google 开源工具类-Guava,可以轻松的解决上面的…
Guava -- 集合类 和 Guava Caches 1. 什么是 Guava Guava 是 google 推出的一个第三方 java 库,用来代替 jdk 的一些公共操作,给我印象特别深的就是 Collection 的扩展和本地缓存的扩展这两个方面了.所以今天也就主要来讲讲 guava 的 collection 和 caches 两方面. 2. 依赖 使用 guava 非常简单,可以直接通过 maven 导入依赖: <dependency> <groupId>com.goog…
玩过redis的朋友都知道,redis中有一个叫做redis-cli的小工具,我们可以利用它在test和develop环境下进行高效的模拟测试,然而在现实环境中, 我们只知道直接键入redis-cli启动命令的交互式,而这个对redis-cli来说绝对是九牛一毛,下面我逐一给大家演示下. 一:非REPL (Read Eval Print Loop) 模式 通常我们都是使用REPL模式,就是连接上端口之后,发一条request再等待response这样一个loop的形式,如下所示: [root@l…
Boom 3D不仅为用户提供了包括3D立体音效.古典音乐音效在内的多种音效增强功能,而且还为用户提供了广播功能.该广播功能不仅涵盖了国内广播节目,而且还涵盖了国际广播节目. Boom 3D的广播功能还在不断完善中,接下来会推出更多可用的广播节目.大家可以先使用现有的广播频道获取国内外的资讯,比如BBC广播频道等.接下来,大家一起来看看如何使用广播功能吧. 图1:软件界面   一.打开广播功能 Boom 3D的广播功能位于播放功能面板中,如图2所示,单击软件左下角的播放按钮,即可打开播放功能面板.…
目录 1  集合类简介  2  List介绍及简单使用 2.1  LinkedList介绍及简单使用 2.2  ArrayList介绍及简单使用 2.3  Vector介绍及简单使用 2.3.1  Stack介绍及简单使用 3  Set介绍  3.1 HashSet介绍及简单使用 3.2 TreeSet介绍及简单使用 3.3 Linked HashSet介绍 4  Map介绍及简单使用  4.1 Hashtable介绍及简单使用 4.2 HashMap简单使用 4.3 WeakHashMap介绍…
本文主要关注Java编程中涉及到的各种集合类,以及它们的使用场景 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E6%8E%92%E5%BA%8F%E5%8F%8Ajava%E9%9B%86%E5%90%88%E7%B1%BB%E8%AF%A6%E8%A7%A3%28collection%E3%80%81list%E3%80%81map%E3%80%81set%29.rar http://blog.sina.c…
目录 1. Java集合类基本概念 2. Java集合类架构层次关系 3. Java集合类的应用场景代码 1. Java集合类基本概念 在编程中,常常需要集中存放多个数据.从传统意义上讲,数组是我们的一个很好的选择,前提是我们事先已经明确知道我们将要保存的对象的数量.一旦在数组初始化时指定了这个数组长度,这个数组长度就是不可变的,如果我们需要保存一个可以动态增长的数据(在编译时无法确定具体的数量),java的集合类就是一个很好的设计方案了. 集合类主要负责保存.盛装其他数据,因此集合类也被称为容…
本文转载自LittleHann 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E6%8E%92%E5%BA%8F%E5%8F%8Ajava%E9%9B%86%E5%90%88%E7%B1%BB%E8%AF%A6%E8%A7%A3%28collection%E3%80%81list%E3%80%81map%E3%80%81set%29.rar http://blog.sina.com.cn/s/blog_a345…
Java的集合分为了四类:List Set Queue Map,每类都有不同的实现,有基于数组实现的,有基于链表实现的,有基于xx树实现的,不同的实现虽在功能上可以相互替代但都有各自的应用场景,如基于数组的实现擅长快速遍历,基于链表的实现擅长随机写,基于树的实现可排序等等. JDK1.5及以后还添加了很多实用的功能,如ConcurrentMap.CopyOnWriteArray.ListBlockingQueue.BlockingDeque.CopyOnWriteArraySet等等,另外,Co…
Java集合类及其数据结构归纳 - s小小的我 - 博客园http://www.cnblogs.com/shidejia/p/6433788.html ---------大图可以 在新标签中打开图片 看到大图 上面这张图总结了java集合类的继承结构,下面是对集合类的一些总结和特性描述: Collection Collection是一个接口,是高度抽象出来的集合,它包含了集合的基本操作:添加.删除.清空.遍历.是否为空.获取大小.是否保护某元素等等.Collection接口的所有子类(直接子类和…