Guoziren`s Space 
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
  •   
  •   

HashMap原理

put方法过程中,计算出索引位置,如果存在值,则比较hashcode?到存在这一步不是已经说明了hashcode一样吗? 11 hashMap的putVal详解 如何判断2个是相同的:①hash(由key的hashcode ^ (hashcode >>> 16)得到)是否相等 ②key 是否相等(比较两个对象的地址?) 或者 key的equals是否为true e 和 p是

2021-03-18
集合框架
Java 集合框架

List

public interface List<E> extends Collection<public interface List<E> extends Collection<E> 有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。 与

2021-03-18
集合框架
Java 集合框架

树

二叉树1.二叉树的先序非递归遍历 定义一个栈并将根节点入栈 当栈不空的时候循环执行 从栈中弹出一个结点,并访问它 如果右孩子不空,右孩子入栈 如果左孩子不空,左孩子入栈 public void preOrderUnCurpublic void preOrderUnCur(TreeNode root){ if (root == null){

2021-03-18
集合框架
Java 集合框架

Map

Map键值对的结构,将键映射到值。一个映射不能包含重复的键;每个键最多只能映射到一个值。 HashMap,HashTable,ConCurrentHashMap的区别和实现原理? 如何实现线程同步? a- rraymap和hashmap的区别? HashMap介绍 HashMap是JDK对于数据结构中哈希表的实现,用于保存键值对这样的一个结构。 //平均来看,哈希表的增删查改都是O(1)的

2021-03-18
集合框架
Java 集合框架

Collections Framework Overview

| ——- | ———————————————————— | ——- | ———————————————————— | ————— |通用实现支持Collection中的所有 可选操作,并且对它们可能包含的元素没有限制。它们是不同步的,但是Collections类包含称为同步包装器的静态工厂,可用于将同步添加到许多未同步的集合中。所有新的实现都有故障快速迭代器,该迭代器检测无效的并发修改,并且快

2021-03-18
集合框架
Java 集合框架

Set

2021-03-18
集合框架
Java 集合框架

String

Class String java.lang.Object java.lang.String public final class String extends public final class String extends Object implements Serializable, Comparable, CharSequence 1.public int compareTo(

2021-03-18
常用类
Java 常用类

模式

保护性暂停模式GuardedObject可以在多个线程之间传递结果 优点: join得等另一个线程介绍,这种模式不用,另一个线程下载完结果传给你后还可以做其他的事情; join传递得全局变量,这种可以是局部变量 join的源码分析就是用到了保护性暂停,且是基于wait实现的等待; 保护性暂停是指条件不满足时,实施wait等待 保护性模式就是一对一的模式,生产结果的线程和消费结果的线程是一一对应

2021-03-18
并发编程
Java 并发编程

线程(池)总结

线程1.什么是线程?进程:是程序的一次执行过程,是操作系统资源分配的基本单位 线程:是计算机中独立运行的最小单位,运行时占用很少的系统资源。 由于每个线程占用的CPU时间是系统分配的,因此可以把线程看成操作系统分配CPU时间的基本单位。 线程基本上不拥有系统资源,它与同属于一个进程的线程共享进程拥有的全部资源。 2.线程的创建方式①继承Thread类重写run方法②参数传递Runnable对象③参

2021-03-18
并发编程
Java 并发编程

Question

2021-03-18
并发编程
Java 并发编程

共享模型之管程

共享模型之管程1. 共享带来的问题两个线程对初始值为 0 的静态变量一个做自增,一个做自减,各做 5000 次,结果是 0 吗? static int counter = static int counter = 0; public static void main(String[] args) throws InterruptedException { Thr

2021-03-18
并发编程
Java 并发编程

并发编程-原理篇

synchronized 原理进阶1. 轻量级锁轻量级锁的使用场景:如果一个对象虽然有多线程要加锁,但加锁的时间是错开的(也就是没有竞争),那么可以 使用轻量级锁来优化。 轻量级锁对使用者是透明的,即语法仍然是 synchronized 假设有两个方法同步块,利用同一个对象加锁 static final Object obj = static final Object obj = new Obje

2021-03-18
并发编程
Java 并发编程
1…34567…23

搜索

Hexo Fluid
鄂ICP备2020017971号-1