![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
卷曲的葡萄藤
这个作者很懒,什么都没留下…
展开
-
JAVASE的TreeMap比较器的实现
flowbean类:package mapreduce_flowcount;import java.util.Map.Entry;import java.util.Comparator;import java.util.Set;import java.util.TreeMap;/** * treemap按照key进行排序。 * @author THY * ...原创 2019-03-14 21:44:32 · 285 阅读 · 0 评论 -
JAVA之HashMap的原理
首先,HashMap时存放<K,V>对的集合,这些<K,V>对也称之为Entry,他们分散的存放在数组中,这就是hashmap的主干。HashMap数组中的元素初始值都是Null。1、写数据方法Put比如hashMap.put("key1",value1),这时需要利用一个hash函数确定这个entry插入的位置index:index=hash(“key1”...原创 2019-04-03 11:29:06 · 200 阅读 · 0 评论 -
简单线程池的实现
三种线程池:1、单个线程的线程池 2、固定大小线程池 3、可缓冲线程池package com.thy.spark.com.thy.d20190417;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class ThreadPoolDemo { ...原创 2019-04-17 20:55:57 · 131 阅读 · 0 评论 -
Java虚拟机详解----JVM常见问题总结(转)
一、Java引用的四种状态:强引用: 用的最广。我们平时写代码时,new一个Object存放在堆内存,然后用一个引用指向它,这就是强引用。 如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足的问题。软引用: 如果一个对象只具有...转载 2019-05-05 10:58:28 · 179 阅读 · 0 评论 -
Java内存结构
Java内存结构主要三大块:堆内存、方法区、栈Java堆(heap)Java虚拟机所管理的内存中最大的一块,所有线程共享的一块内存区域,虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配内存。垃圾收集器管理的主要区域,如果从内存回收的角度看,由于现在收集器基本都是采用的分代收集算法,所以Java堆中还可以细分为:新生代和老年代。Java堆可以...原创 2019-05-07 11:59:28 · 107 阅读 · 0 评论 -
剑指offer刷题笔记(Java版)---- 构建乘积数组
本題首先需要清楚的理解題目的意思,然後在去想法解題。题目描述给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。有些題目看着不是很清晰的話,可以適當的去畫圖觀察一下,比如本題數組就取A[1,2,3,4,5]這些元素。那麼B[i]與A[...原创 2019-08-08 00:24:12 · 182 阅读 · 0 评论 -
剑指offer刷题笔记(Java版)---- 找出数组重复数字
题目描述在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。简单而言就是:找出数组中重复的数字存入到一个数组中。解法一:简单想法就是利用hashmap,遍历数组放入hash...原创 2019-08-07 17:39:17 · 194 阅读 · 0 评论