HashMap,ConcurrentHashMap的常见面试题

常见问题如下:谈谈你理解的 HashMap,讲讲其中的 get put 过程。JDK 1.8 对 HashMap 做了什么优化?HashMap是线程安全的吗?不安全会导致哪些问题?如何解决?有没有线程安全的并发容器?ConcurrentHashMap 是如何实现的? 1.7、1.8 实现上有什么不同?为什么要这么做?首先,我们知道 HashMap 的底层是基于数组+链表的方式。而 JDK 1.7

- 阅读全文 -

Java集合类总结

Collection接口抽象接口Collection<E>默认实现了抽象接口Iterable<E>,并包含了一些抽象方法,比如size()、isEmpty()和iterator()。Collection接口是集合类的根接口,Java没有提供其直接的实现类,但是让其产生了两个主要的接口List和Set。List是一个有序的集合,可以包含重复元素,通过索引访问其中的元素。Set

- 阅读全文 -

JAVA设计模式-单例模式

Java中单例模式是一种广泛使用的设计模式。单例模式的作用: 单例模式的主要作用是保证在Java程序中,某个类只有一个实例存着。一些管理器和控制器经常被设计成单例模式。避免实例对象的重复创建。减少每次创建对象的时间开销,节约内存空间。避免操作多个实例导致的逻辑错误。全局统一管理控制一个对象。饿汉模式public class Singleton{ private static Si

- 阅读全文 -

Java爬虫总结

爬虫准备JDK 1.7Eclipse(或STS)httpclient 4.3以上版本jsoup(html解析器)Chrome(带有开发者工具的浏览器)请求分析对爬虫网站进行请求分析。主要获取请求头、cookie和请求对应的URL。对于无法直接获取请求URL的请求,比如通过form表单提交的请求,或者ajax请求,需要通过源码来查看提交的URL地址。对于POST请求中的请求参数,可以通过Fiddle

- 阅读全文 -

Java-mongodb日期类型分析

Java Date类型的日期在保存到mongoDB时,mongodb的java driver会将其自动转换为标准时间GMT(格林尼治时间)。CST时间等于GMT时间加上8个小时。使用Java获取的CST时间(China Standard Time)与GMT时间相比会出现8个小时的差值。而使用JavaScipt获取的CST时间是Central Standard Time(美国中部时间)。美国中部时间

- 阅读全文 -