Java数据结构基础知识你知道多少?
http://www.cnblogs.com/qlky/p/7359462.html
http://www.importnew.com/28263.html
HashMap( java 7)
- 构造函数中的int initialCapacity和float loadFactor作用是什么,分别会怎么影响HashMap的性能表现?
- 容量为什么默认为2^n?
- 数据结构是怎样的,画出类和类成员示意图
- 迭代方式?
hashcode
- 为什么要有hashcode,适用情景?
int index = (hash & 0x7FFFFFFF) % tab.length; 为什么要& http://www.cnblogs.com/chenssy/p/3651218.html
和HashTable的区别?http://www.cnblogs.com/qlky/p/7355466.html
- 数据结构
- 迭代方式
hashmap.put
- put实现逻辑是怎样的?
- 键值可以为null吗?如何处理这个逻辑?
- 如何确定table[index]中的index?为什么可以用&代替%?
- 如何处理冲突?https://www.jianshu.com/p/4d3cb99d7580 哈希表针对冲突的两种方式优缺点是什么? - 程序员吴师兄的回答 - 知乎 https://www.zhihu.com/question/47258682/answer/572450659
- 新的key处理逻辑?
- 为什么要记录modCount?作用是什么 http://www.cnblogs.com/qlky/p/7355466.html
- 扩容的逻辑是什么?
hashmap多线程
- 多线程环境下HashMap哪几个方法会出现问题?
- 问题的原因是什么?
- 属于死锁还是死循环?
- 解决方案有哪些?
- hashTable并发方法,优缺点?
- SynchronizedMap原理,优缺点?
- ConcurrentHashMap原理,优缺点?适用情景?http://www.importnew.com/21388.html
JAVA 8 hashmap
https://javadoop.com/post/hashmap
- 底层结构?
- 链表大小为多少的时候转换?
- 扩容方法?
- 多线程下死循环解决方法?https://blog.csdn.net/qq_27007251/article/details/71403647 https://my.oschina.net/alexqdjay/blog/1377268
TreeMap
http://www.cnblogs.com/qlky/p/7361877.html
- 底层结构?
- 设置比较节点大小的方式?
- 遍历方式?Java 集合系列12之 TreeMap详细介绍(源码解析)和使用示例
Iterator
http://www.cnblogs.com/qlky/p/7367791.html
- 结构?
- 遍历方法?
- array, list, hashmap, treemap
- 和Enumeration的比较?Java 集合系列18之 Iterator和Enumeration比较
Stack
http://www.cnblogs.com/chenssy/p/3833341.html
- 底层结构?
- 源码实现?
- 是否线程安全?相关实现
Vector
http://www.cnblogs.com/chenssy/p/3840572.html
- 底层实现?
- 与ArrayList区别
fast-fail
http://www.cnblogs.com/chenssy/p/3870107.html
- 实现机制?
- 如何判断数据结构被修改?
- 如何保证不同线程中modCount相同?
- 解决方法?
Java数据结构基础知识你知道多少?的更多相关文章
- 什么才是java的基础知识?
近日里,很多人邀请我回答各种j2ee开发的初级问题,我无一都强调java初学者要先扎实自己的基础知识,那什么才是java的基础知识?又怎么样才算掌握了java的基础知识呢?这个问题还真值得仔细思考. ...
- JAVA相关基础知识
JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分, ...
- Java 多线程——基础知识
java 多线程 目录: Java 多线程——基础知识 Java 多线程 —— synchronized关键字 java 多线程——一个定时调度的例子 java 多线程——quartz 定时调度的例子 ...
- java必备基础知识(一)
学习的一点建议: 每一门语言的学习都要从基础知识开始,学习是一个过程,"万丈高楼平地起",没有一个好的地基,想必再豪华的高楼大厦终究有一天会倒塌.因此,我们学习知识也要打牢根基,厚 ...
- java部分基础知识整理----百度脑图版
近期发现,通过百度脑图可以很好的归纳总结和整理知识点,本着学习和复习的目的,梳理了一下java部分的知识点,不定期更新,若有不恰之处,请指正,谢谢! 脑图链接如下:java部分基础知识整理----百度 ...
- JAVA学习基础知识总结(原创)
(未经博主允许,禁止转载!) 一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平 ...
- JAVA多线程基础知识(一)
一. 基础知识 要了解多线程首先要知道一些必要的概念,如进程,线程等等.开发多线程的程序有利于充分的利用系统资源(CPU资源),使你的程序执行的更快,响应更及时. 1. 进程,一般是指程序或者任务的执 ...
- Java的基础知识三
一.Java 集合框架 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个 ...
- Java SE 基础知识(一)
一.基础知识 1. Java SE : Java Standard Edition Java ME : Java Micro Edition Java EE : Java Enterprise Edi ...
随机推荐
- 《Python绝技:运用Python成为顶级黑客》 用Python实现免杀
1.免杀的过程: 使用Metasploit生成C语言风格的一些shellcode作为载荷,这里使用Windows bindshell,功能为选定一个TCP端口与cmd.exe进程绑定在一起,方便攻击者 ...
- Mybatis的cache
相关类:org.apache.ibatis.executor.CachingExecutor 相关代码: public <E> List<E> query(MappedStat ...
- 日志分析与splunk浅谈
难易程度:★★★ 阅读点:linux;python;web安全;日志分析; 文章作者:xiaoye 文章来源:i春秋 关键字:网络渗透技术 前言 linux下的日志分析对企业来说非常重要,对我们分析p ...
- Python小白学习之路(十五)—【map()函数】【filter()函数】【reduce()函数】
一.map()函数 map()是 Python 内置的高阶函数 有两个参数,第一个是接收一个函数 f(匿名函数或者自定义函数都OK啦):第二个参数是一个 可迭代对象 功能是通过把函数 f 依次作用在 ...
- iOS 枚举讲解
枚举增强程序的可读性,用法上还是需要注意的 1.C语言的写法 enum XMPPReconnectFlags { kShouldReconnect = 1 << 0, // If set, ...
- JS优先队列排序。出队时,先找出优先级最高的元素,再按照先进先出出队。
JS优先队列排序.出队时,先找出优先级最高的元素,再按照先进先出出队. /* * 优先队列 * 出队时,先找出优先级最高的元素,再按照先进先出出队. * */ function Queue(){ th ...
- jmeter -- 在beanshell中拿到请求body参数和header参数
beanshell: import org.apache.jmeter.config.Arguments; import org.apache.jmeter.protocol.http.control ...
- Kafka消息队列
转自:http://blog.csdn.net/yfkiss/article/details/17348693 代码案例 http://blog.csdn.net/ganglia/article/de ...
- 移植C/C++代码的十个技巧
这篇文章是我翻译自Top 10 tips for code porting c/c++的一篇小短文,以下是翻译全文,如有错误请留言或查阅原文. 代码的可移植性基本上是指使得源代码能够在不同的平台上编译 ...
- UBUNTU 下 APACHE2 Too many open files: Error retrieving pid file /var/run/apache2.pid
cat /proc/sys/fs/file-max 系统可打开的最大文件个数 ulimit -n 当前系统限制的个数 ulimit -n 10240 调整当前系统的限制 修改/etc/sysctl.c ...