Java
文章平均质量分 65
一生所爱丶
这个作者很懒,什么都没留下…
展开
-
JAVA之HashMap源码分析
hashmap是基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了不同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。另外,HashMap是非线程安全的,也就是说在多线程的环境下,可能会存在问题,而Hashtable是线程安全的。hashmap的数据结原创 2016-03-22 23:41:56 · 390 阅读 · 0 评论 -
Hashtable的实现原理
我们先对Hashtable有个整体认识,然后再学习它的源码,最后再通过实例来学会使用Hashtable。第1部分 Hashtable介绍第2部分 Hashtable数据结构第3部分 Hashtable源码解析(基于JDK1.6.0_45)第4部分 Hashtable遍历方式第5部分 Hashtable示例转载请注明出处:http://www.cnblogs.com/转载 2016-03-23 23:29:37 · 493 阅读 · 0 评论 -
HashMap循环遍历方式及其性能对比
主要介绍HashMap的四种循环遍历方式,各种方式的性能测试对比,根据HashMap的源码实现分析性能结果,总结结论。 1. Map的四种遍历方式下面只是简单介绍各种遍历示例(以HashMap为例),各自优劣会在本文后面进行分析给出结论。(1) for each map.entrySet()JavaMap map = new HashMap();for转载 2016-03-23 23:30:37 · 424 阅读 · 0 评论 -
Java synchronized详解
原文出处:http://www.cnblogs.com/devinzhang/archive/2011/12/14/2287675.htmlJava synchronized详解第一篇:使用synchronized在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题。在Java中内置了语言级的同步原语--synchronized,这也大大简化了转载 2016-04-12 17:17:23 · 383 阅读 · 0 评论 -
Java面试题:栈和队列的实现
原文出处:http://www.codeceo.com/article/java-stack-queue.html 面试的时候,栈和队列经常会成对出现来考察。本文包含栈和队列的如下考试内容:(1)栈的创建(2)队列的创建(3)两个栈实现一个队列(4)两个队列实现一个栈(5)设计含最小函数min()的栈,要求min、push、pop、的时间复杂度都是O(1)(6)判断栈的push和pop序列是否一致转载 2016-04-13 12:40:44 · 432 阅读 · 0 评论 -
Java 多线程同步的五种方法
原文出处:http://www.codeceo.com/article/java-multi-thread-sync.html 一、引言前几天面试,被大师虐残了,好多基础知识必须得重新拿起来啊。闲话不多说,进入正题。 二、为什么要线程同步因为当我们有多个线程要同时访问一个变量或对象时,如果这些线程中既有读又有写操作时,就会导致变量值或对象的状态出现混乱,从而导致程序异常。举个例子,如果一个银行账转载 2016-04-13 12:42:55 · 374 阅读 · 0 评论 -
Java:HashMap按键值排序
HashMap存储每对键和值作为一个EntryMap<String,Integer> map=new HashMap<String,Integer>();2.创建一个简单的HashMap,并插入一些键和值。map.put("张三", 80); map.put("李四", 90); map.put("王五", 70);3.从HashMap恢复entry集合,如下所示。S原创 2016-04-13 20:32:25 · 723 阅读 · 0 评论 -
Java对象的深复制和浅复制
我们在编码过程经常会碰到将一个对象传递给另一个对象,java中对于基本型变量采用的是值传递,而对于对象比如bean传递时采用的引用传递也就是地址传递,而很多时候对于对象传递我们也希望能够象值传递一样,使得传递之前和之后有不同的内存地址,在这种情况下我们一般采用以下两种情况。浅复制与深复制概念浅复制(浅克隆) :被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向转载 2016-04-11 19:48:54 · 433 阅读 · 0 评论 -
JAVA 小抄
1.String str="asd";StringBuilder stringbuilder = new StringBuilder(str);将String对象转换为StringBuilder对象。Stringbuilder.toString();将StringBuilder对象转化为String对象。2.Object array;Object [] ne原创 2016-04-05 19:48:07 · 428 阅读 · 0 评论