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 ...
随机推荐
- FFmpeg音视频解封装
一 . 解封装用到的函数和结构体 1.av_register_all() : open 一次就调用一次 2.avformat_network_init() : 网络模块初始化 3.avformat_o ...
- FunDA(11)- 数据库操作的并行运算:Parallel data processing
FunDA最重要的设计目标之一就是能够实现数据库操作的并行运算.我们先重温一下fs2是如何实现并行运算的.我们用interleave.merge.either这几种方式来同时处理两个Stream里的元 ...
- linux下各个目录里面都装了什么
文章来源:http://blog.csdn.net/sunstars2009918/article/details/7038772 搞电脑的人总想知道自己的系统里到底有些什么东西,于是我就在Linux ...
- vue 学前班002(创建一个实例)
创建一个Vue实例 我们之前说过,Vue是数据驱动视图的,只要model(模型层)的数据改变了,Vue就会帮我们改变视图上显示的内容,不用我们自己去动手写代码更新.那么,它是怎么做到的,我们的代码要怎 ...
- windows系统上安装与使用Android NDK r5
windows系统上安装与使用Android NDK r5 很早就听说了android的NDK应用,只是一直没有时间去研究,今天花了点时间在windows平台搭建了NDK环境,并成功运行了第一个简单 ...
- ios实现fastlane自动化打包
终于抽出时间来学习自动化打包了,app在测试阶段一天总会经历好几次的打包,每次打包真是身心疲惫,刚打完的包说不定就被测试妹子反应还要微调什么地方,我就真的有气没法出,打一次包怎么也得浪费十几分钟,还不 ...
- Jvm内存工具
1,JConsole 位于 [JDK] bin 下, 2,代码查看当前进程堆内存 long maxMemory = Runtime.getRuntime().maxMemory();long tot ...
- apache2.4配置weblogic12c集群(linux环境)
首先确定环境已装apache2.4,没装的话可以看下这篇文章apache2.4一键脚本安装(linux环境) 1.下载apache分发模块mod_wl_24.so 下载apache2.4的weblog ...
- J05-Java IO流总结五 《 BufferedInputStream和BufferedOutputStream 》
1. 概念简介 BufferedInputStream和BufferedOutputStream是带缓冲区的字节输入输出处理流.它们本身并不具有IO流的读取与写入功能,只是在别的流(节点流或其他处理流 ...
- eclipseGUI的可视化开发工具插件
一 各种GUI开发插件的特色 Eclipse并不自带GUI的可视化开发工具,那么如果要在Eclipse进行可视化的GUI开发,就需要依靠第三方的插件. 1. Visual Editor Eclip ...