随笔分类 - JAVA
摘要:Maven 常用命令 mvn archetype:create :创建 Maven 项目。 mvn compile :编译源代码。 mvn deploy :发布项目。 mvn test-compile :编译测试源代码。 mvn test :运行应用程序中的单元测试。 mvn site :生成项目相
阅读全文
摘要:算法足够优化 没有线程/资源的使用不当而导致的CPU利用不足。 如果达到上面的条件,性能仍然无法满足应用的要求,只能通过考虑购买更好的机器,或 者集群来实现更大的容量支持。
阅读全文
摘要:清空缓存(File->Invalidate Caches/Restart)
阅读全文
摘要:1、内存够用,将URL存入hash链表,每个URL读入到hash链表中,遇到重复的就舍弃,否则加入到链表里面,最后遍历得到所有不重复的URL。 2、如果受内存限制,构造一个hash函数,把url适当散列到若干个比如1000个小文件中,然后在每个小文件中去除重复的url,再把他们合并。 原理是相同的u
阅读全文
摘要:饿汉模式 1 public class Single { 2 3 private static Single instance = new Single(); 4 5 private Single(){ 6 System.out.println("Single: " + System.nanoTim
阅读全文
摘要:在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出
阅读全文
摘要:newFixedThreadPool:创建固定大小的线程池,每次提交一个任务就创建一个线程,直到线程达到线程池的最大大小; newCachedThreadPool:创建一个可缓存的线程池,此线程池不会对线程池大小做限制,线程池大小完全依赖于操作系统(或者说JVM)能够创建的最大线程大小; newSc
阅读全文
摘要:方法一:暴力法算法 在暴力法中,我们将会把所有可能爬的阶数进行组合,也就是 1 和 2 。而在每一步中我们都会继续调用 climbStairsclimbStairs 这个函数模拟爬 11 阶和 22 阶的情形,并返回两个函数的返回值之和。 public class Solution { public
阅读全文
摘要:题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 思路1 哈希表用哈希表记录每个元素出现的次数,如果该元素出现次数超过一半,返回1
阅读全文
摘要:JAVA 接口与抽象类(interface与abstract)的区别 相同点 (1)都不能被实例化 (2)接口的实现类或抽象类的子类都只有实现了接口或抽象类中的方法后才能实例化 不同点 (1)接口只有定义,不能有方法的实现,java 1.8中可以定义default方法体,而抽象类可以有定义与实现,方
阅读全文
摘要:package quickSort; public class QuickSort { private static int count; /** * 测试 * @param args */ public static void main(String[] args) { int[] num = {
阅读全文
摘要:Singleton 模式主要作用是保证在 Java 应用程序中,一个类 Class 只有一个实例存在。举例:定义 一个类,它的构造函数为 private 的,它有一个 static 的 private 的该类变量,在类初始化时实例话,通过一 个 public 的 getInstance 方法获取对它
阅读全文

浙公网安备 33010602011771号