摘要:
Map是一个重要的数据结构,本篇文章将介绍如何使用不同的Map,如HashMap,TreeMap,HashTable和LinkedHashMap。 Map概览 Java中有四种常见的Map实现,HashMap,TreeMap,HashTable和LinkedHashMap,我们可以使用一句话来描述各 阅读全文
摘要:
译文链接 http://www.programcreek.com/2014/01/java-varargs-examples/ 什么是Java可变参数 可变参数是Java 1.5引入的一个特性,它允许一个方法接受任意数量的参数。 可变参数是如何工作的 当使用可变参数的时候,会先创建一个数组,其数组长 阅读全文
摘要:
List概览 List,正如它的名字,表明其是有顺序的。当讨论List的时候,最好拿它跟Set作比较,Set中的元素是无序且唯一;下面是一张类层次结构图,从这张图中,我们可以大致了解java集合类的整体架构; ArrayList vs LinkedList vs Vector 从上面的类层次结构图中 阅读全文
摘要:
前言 在Java中,字符串是一个不可变的类,一个不可变的类指的是它的实例对象不能被修改,所有关于这个对象的信息在这个对象被创建时已初始化且不能被改变。 不可变类有很多优势,这篇文章总结了字符串类之所以被设计成不可变类的原因,涉及内存模型,线程同步,数据结构等知识。 字符串常量池的需求 字符串常量池是 阅读全文
摘要:
这是一个展示如何使用join()方法的例子。 问题: 使用Java多线程计算表达式1*2/(1+2)的值。 解决方案: 使用一个线程做加法运算,另一个线程做乘法运算,还有一个主线程main做除法运算。由于线程之间不需要通讯,所以我们只需要考虑线程的执行顺序。 在main线程中,我们让加法运算线程和乘 阅读全文
摘要:
以下内容来自维基百科,关于静态类型检查和动态类型检查的解释: 静态类型检查:基于程序的源代码来验证类型安全的过程; 动态类型检查:在程序运行期间验证类型安全的过程; Java使用静态类型检查在编译期间分析程序,确保没有类型错误。基本的思想是不要让类型错误在运行期间发生。 以下代码是一个例子,理解了他 阅读全文