zoukankan      html  css  js  c++  java
  • java 效率编程 的一些小知识点

    1.在程序中若出现字符串连接的情况。请使用StringBuffer取代String,这样能够降低多次创建String以及垃圾回收所带来的内存消耗

    2.尽量使用局部变量。

    调用方法时传递的參数以及调用中创建的暂时变量都保存在栈中,由于JVM是基于堆栈的虚拟机。所以优化了对堆栈的处理。并且,Static变量和类的实例变量都是在堆上创建的。因此使用局部变量的运行效率比使用Static变量和类的实例变量的运行效率要高

    3.for(int i = 0 ; i<list.size() ; i++){

    }

    尽量使用以下的方式取代上面的方式

    int count = list.size();

    for(int i = 0 ; i<count ; i++){

    }

    原谅我可耻的mark行为吧:原文地址http://blog.csdn.net/zhaokaiqiang1992/article/details/26157109

    这样能够降低非常多运算,比如我们以下的程序

    package Test;
    import java.util.ArrayList;
    import java.util.List;
    public class TestForFast {
    	public static void main(String[] args) {
    		List<String> list = new ArrayList<String>();
    		//创建包括大数据的集合
    		for (long i = 0; i < 1000000; i++) {
    			list.add("xixixi"+i);
    		}
    		long starttime1 = System.currentTimeMillis();
    		for(int i=0;i<list.size();i++) {
    			//运行一些操作
    		}
    		long endtime1 = System.currentTimeMillis();
    		System.out.println("第一种浪费的时间是:"+(endtime1-starttime1));
    		
    		long starttime2 = System.currentTimeMillis();
    		int count = list.size();
    		for(long i=0;i<count;i++) {
    			//运行一些操作
    		}
    		long endtime2 = System.currentTimeMillis();
    		System.out.println("另外一种浪费的时间是:"+(endtime2-starttime2));
    	}
    }
    




  • 相关阅读:
    Jmeter执行流程分析
    curl获取公网IP地址
    搭建redis集群
    基于bind搭建DNS主从
    centos7设置iptables
    rabbitmq常用命令
    防火墙
    定时任务和配置中心
    Maven中pom.xml配置文件详细介绍
    Grafana+Prometheus监控
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/7130393.html
Copyright © 2011-2022 走看看