jvm的垃圾回收是个老生常谈的问题,在这里,我会从以下一个方面来和大家聊聊垃圾回收。
1 在哪里收垃圾?
2 哪些内容可认为是垃圾?
3 怎么回收垃圾?
4 gc报告的阅读
在哪里收垃圾
这里,我建议大家先读一下拙作: java内存管理
上图中的5部分:
虚拟机栈,本地方法栈,程序计数器三个区域随线程而生,随线程而灭;栈中的栈帧随着方法的进入和退出而有条不紊地执行...
分类:
编程语言 时间:
2015-08-20 13:17:52
阅读次数:
209
java 调用ant的自定义task,
File buildFile = new File(".//ee-build.xml");
// 创建一个ANT项目
Project p = new Project();
// 创建一个默认的监听器,监听项目构建过程中的日志操作
DefaultLogger c...
分类:
编程语言 时间:
2015-08-20 13:20:14
阅读次数:
132
刷微博时偶然看到 Lambda 的 HelloWorld 教程,觉得很酷炫!分享一下!效果示例总体看起来效果就是代码简洁,如下//之前的写法
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
System.out.printl...
分类:
编程语言 时间:
2015-08-20 13:17:20
阅读次数:
130
题意:字母表的26个字母都有一个价值,给定一个字符串,将该字符串切成两份,对于每一份,如果是回文串,就获得该子串的字母价值之和,否则该子串的价值为0。求出将字符串切成两份后能够获得的最大价值。
做法:先用Manacher算法求出以每个字母为中心的回文串的长度,并计算该字符串的前缀价值和。然后枚举切割点,得到两份子串。这样就可以知道每个子串的中心点,然后检查以该子串的中心点作为中心点的回文串的长度...
分类:
编程语言 时间:
2015-08-20 13:14:36
阅读次数:
132
异常: 程序在运行时发生的不正常的情况
异常的分类:
Throwable:
Error:错误。由系统原因造成的,一般是系统资源分配冲突或者系统崩 溃等原因。
对于程序员来说Error是无法处理的。
Exception:异常。通常由程序造成的,一般 运算、io等等,可以处理的默认是jvm进行异常处理。处理的方...
分类:
编程语言 时间:
2015-08-20 13:15:26
阅读次数:
138
快速排序及其优化
public class QuickSort {
public static void main(String[] args) {
int [] a ={1,2,3,0,9,8,7,6,5,4};
Sort(a,10);
for(int k=0;k<a.length ;k++){
System.out.print(a[k]+" ");
}
}
p...
分类:
编程语言 时间:
2015-08-20 13:15:59
阅读次数:
137
1,Java 中 获取 控制台输入(System.in)的方法,一般有两种:
(1) BufferedReader scin=new BufferedReader(new InputStreamReader(System.in));
(2) Java.util.Scanner scin=new Jave.util.Scanner (System.in);
2,使用Scanner 的方法:
(1...
分类:
编程语言 时间:
2015-08-20 13:14:31
阅读次数:
143
Choose the best route
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 10690 Accepted Submission(s): 3454
Problem Description
One d...
分类:
编程语言 时间:
2015-08-20 13:14:24
阅读次数:
148
当你查看unity里面的API的时候,是不是有时候追踪了一两步就碰到DLL文件走不下去了呢?很是不爽。
这种问题我是经常碰到。这是人家商业引擎不想让你看到底层代码啦,所以着急不得。
不过,今天我终于有了办法解决这个问题。那就是使用反编译DLL文件!简单,粗暴。不过为了了解底层的结构,这也不失为一种办法哦。
OK!啰嗦了半天,让我带你进入该今天的主题吧。
1.首先下载.NET Reflect...
分类:
编程语言 时间:
2015-08-20 13:13:54
阅读次数:
131
线程:
static void sleep(long 毫秒):睡眠 在指定的毫秒数内让正在执行的线程进入休眠状态(暂停执行)
throws InterruptedException
注意:
1 线程休眠是帮助所有线程获得运行机会的最好的方法
2 线程睡眠自动苏醒,并返回到就绪状态(可运行),不是运行状态。
sleep()指定的时间是休眠后可运...
分类:
编程语言 时间:
2015-08-20 13:12:02
阅读次数:
140
栈、队列、链表都有他们各自的好处,同样的也有弊端的存在。
如果我想要一个有序的数组和链表这个当然很好实现。现在我要在这几个数据结构中查找一个值。先说数组,因为是有序的通过二分查找很快的就可以找到。查找的效率还是很高的,但如果要是插入呢,为了保证有序,我要先找到插入位置,然后再将比插入数字大的数字依次向后移动;这时的第一反应就是链表!他打插入速度很快,只要改变指针的指向就可以了。但是链表大查找要从头开始找啊。只有知道了前一个元素的地址才能知道下一个地址。所以链表查找起来又费劲了。这时候就有人引进了...
分类:
编程语言 时间:
2015-08-20 13:12:44
阅读次数:
132
八皇后问题java实现
public class eightqueen {
public static int count=0;
public static void main(String[] args) {
int chess[][]=new int [8][8];
search(chess,0,8);
}
static void search(int che...
分类:
编程语言 时间:
2015-08-20 13:12:02
阅读次数:
185
泛型:
泛型:通过来接受一种引用数据类型,作用在编译时,使用检查
添加集合的对象是否属于该类型,从而把运行时的问题转换为编译时异常,提高程序的安全性
避免抛出 ClassCastException,同时也不需要类型转换<>什么时候使用?
当操作的引用数据类型不确定的时候,使用<>.把要操作的数据类型传进来即可
其实<>相当于接受具体的引用数据类型的...
分类:
编程语言 时间:
2015-08-20 13:11:18
阅读次数:
130
WPF中多线程统计拆箱装箱和泛型的执行效率,使用的知识点有泛型、多线程、委托,从例子中可以看到使用泛型的效率至少提升2倍...
分类:
编程语言 时间:
2015-08-20 13:10:16
阅读次数:
129
本文将介绍一种新的算法,叫做局部灰度值编码算法,它通过对灰度值编码来进行粗匹配,再用相位相关法进行精匹配。...
分类:
编程语言 时间:
2015-08-20 13:08:19
阅读次数:
134
首先介绍一下什么是二分法查找。
顾名思义二分法即多次将待查数组的长度折半,但前提条件时待查找数组中的数据需要是已经排序好了的数据。
主要思想:
对于待查找数组arr[low,high],其中high=arr.length-1,待查找元素des
(1)确定数组中间位置mid=(low+high)/2
(2)将查找值des与arr[mid]进行比较,若相等,则直接返回该位置;否则确定新的查找位置,继续二分查找。区域确定如下:如果arr[mid]>des由数组的有序性可知
arr[mid,mid+1..........
分类:
编程语言 时间:
2015-08-20 13:09:32
阅读次数:
118
1、int转化成String:inti=10; Stringstr=Integer.toString(i);或者//int转换成Stringint x=10;String sx=x+"";String sx1=String.valueOf(x);System.out.println(sx);Syst...
分类:
编程语言 时间:
2015-08-20 13:00:33
阅读次数:
142