Java优化编程
1. 在C语言中,我们通常习惯把需要的对象申明放在函数的开头,但其实这是白白浪费了内存,在Java中,不到需要的时候,请不要创建对象。
2. 垃圾回收会不定期的搜索已经没有用的对象,然后释放对象的内存,但这种搜索是比较耗资源的。为提高效率,我们可以主动为垃圾回收器做一些工作,只需要在废弃的对象后面加一句代码即可:
while(…){
…
a = null;//将a的引用赋值为null
}
3. System.arraycopy()效率比我们自己写for循环效率要高
4. 减少for循环的切换次数
for(int i=0;i<1000;i++){
for(int j=0;j<20;j++){
…
}
}
写成下面的形式会让程序跑的更快:
for(int j=0;j<20;j++){
for(int i=0;i<1000;i++){
…
}
}
5. 在某些虚拟机中
for(int i = 0;i<a.length();i++)这种形式要比for(int i=a.length-1;i>=0;i--)要快
6. 我们都知道要比较两个String的内容是否相同,要用equals()方法,但其实还有一种方法比它的效率更好,那就是字符串驻留。示例代码:
str = str.intern();//字符串驻留
if(str == str1) …//之后就可以
相关文档:
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......
一个简单示例--
1,准备:MySQL数据库驱动包【mysql-connector-java-5.1.10-bin.jar】导入
2,创建测试连接主程序
package mysqlConnection;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class JdbcDemo {
public static void main(String[] args) {
......
java(jsp)使用MySql数据库,中文乱码的完整解决方案
mysql是一个小型的开源的数据库,用来自学一些技术是十分方便的。但使用mysql存储数据,也会遇到一些非常恶心的问题,如:中文乱码问题、java驱动程序无法使用的问题(已经解决,详见:http://hi.baidu.com/lauo1988/blog/item/ff0da655bd3e2eceb745ae0b.html)。
......
压缩文件夹代码:
import java.io.File;
import org.apache.tools.zip.ZipOutputStream; //这个包在ant.jar里,要到官方网下载
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.zip.ZipInputStream;
import java.util.zip.ZipEntry;
......