存储性能 - 速度测试代码

简介: ArrayListTest.java   package qqq; import java.util.ArrayList; public class ArrayListTest {     /**      * @param args      */     public static void main(String[] args) {               

ArrayListTest.java

 

package qqq;

import java.util.ArrayList;

public class ArrayListTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
       
        long startTimeAL1;
        long endTimeAL1;
        long startTimeAL2;
        long endTimeAL2;
        //AL顺序添加500000
        startTimeAL1 = System.currentTimeMillis();
        ArrayList aL = new ArrayList();
        for(int i=0;i<50000; i++){
            aL.add("000");
        }
        endTimeAL1 = System.currentTimeMillis();
        //AL前段添加
        startTimeAL2 = System.currentTimeMillis();
        ArrayList aL2 = new ArrayList();
        for(int i=0;i<50000; i++){
            aL.add(1,"000");
        }
        endTimeAL2 = System.currentTimeMillis();           
       
        System.out.println("顺序添加50000条数据耗时:"+(endTimeAL1-startTimeAL1)+"ms");
        System.out.println("顺序添加50000条数据耗时:"+(endTimeAL2-startTimeAL2)+"ms");
    }
}

//********************************************************************************

HashMapTest.java

 

package qqq;

import java.util.HashMap;

public class HashMapTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
       
        long startTimeAL1;
        long endTimeAL1;
        long startTimeAL2;
        long endTimeAL2;
        //AL顺序添加500000
        startTimeAL1 = System.currentTimeMillis();
        HashMap hM1 = new HashMap();
        for(int i=0;i<50000; i++){
            hM1.put(i,"000");
        }
        endTimeAL1 = System.currentTimeMillis();
        //AL前段添加
        startTimeAL2 = System.currentTimeMillis();
        HashMap hM2 = new HashMap();
        for(int i=0;i<50000; i++){
            hM2.put(50000-i, "000");
        }
        endTimeAL2 = System.currentTimeMillis();   
       
        //System.out.println(hM1.size());
        //System.out.println(hM2.size());
        System.out.println("顺序添加50000条数据耗时:"+(endTimeAL1-startTimeAL1)+"ms");
        System.out.println("顺序添加50000条数据耗时:"+(endTimeAL2-startTimeAL2)+"ms");

    }
}

//********************************************************************************

LinkedListTest.java

 

package qqq;

import java.util.ArrayList;

public class LinkedListTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
       
        long startTimeAL1;
        long endTimeAL1;
        long startTimeAL2;
        long endTimeAL2;
        //AL顺序添加500000
        startTimeAL1 = System.currentTimeMillis();
        ArrayList aL = new ArrayList();
        for(int i=0;i<50000; i++){
            aL.add("000");
        }
        endTimeAL1 = System.currentTimeMillis();
        //AL前段添加
        startTimeAL2 = System.currentTimeMillis();
        ArrayList aL2 = new ArrayList();
        for(int i=0;i<50000; i++){
            aL.add(1,"000");
        }
        endTimeAL2 = System.currentTimeMillis();   
       
       
        System.out.println("顺序添加50000条数据耗时:"+(endTimeAL1-startTimeAL1)+"ms");
        System.out.println("顺序添加50000条数据耗时:"+(endTimeAL2-startTimeAL2)+"ms");

    }
}
 

 

目录
相关文章
|
1天前
|
Java jenkins 持续交付
Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试
【7月更文挑战第1天】Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试。成功后,Jenkins执行部署任务,发布到服务器或云环境。使用Jenkins能提升效率,保证软件质量,加速上线,并需维护其稳定运行。
11 0
|
1天前
|
缓存 监控 Java
如何测试Java应用的性能?
如何测试Java应用的性能?
|
4天前
|
测试技术
Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
|
11天前
|
前端开发 JavaScript 算法
JavaScript事件监听测试代码
JavaScript事件监听测试代码
10 0
|
12天前
|
SQL 安全 Java
探索软件测试的多维策略:从单元到集成,再到性能与安全
在软件开发过程中,测试是确保产品质量和用户满意度的关键步骤。本文将深入探讨软件测试的多维策略,包括单元测试、集成测试、性能测试和安全测试。我们将分析每种测试方法的优势和局限性,并讨论如何将这些策略整合到一个全面的测试计划中,以提高软件的可靠性和安全性。文章还将提供实用的例子和最佳实践,帮助读者更好地理解和应用这些测试技术。
|
13天前
|
测试技术 Python
Python教程:利用timeit模块对代码进行性能测试
在Python中,了解代码的性能是优化和改进的关键。timeit模块是Python标准库中的一个工具,用于测量代码片段的执行时间。本文将介绍timeit模块的各种接口、命令行使用方法以及如何对代码中的函数或类进行性能测试。
22 3
|
18天前
|
SQL 存储 关系型数据库
MySQL存储过程——Baidu Comate智能代码助手添加20条DML语句——测试索引效果
MySQL存储过程——Baidu Comate智能代码助手添加20条DML语句——测试索引效果
11 0
|
21天前
|
编译器 测试技术 Linux
技术洞察:循环语句细微差异下的性能探索(测试while(u--);和while(u)u--;的区别)
该文探讨了两种循环语句(`while(u--);` vs. `while(u) u--;`)在性能上的微妙差异。通过实验发现,后者比前者平均执行速度快约20%,原因在于循环条件检查的顺序影响了指令数量。尽管差异可能在多数情况下不显著,但在性能关键的代码中,选择合适的循环结构能优化执行效率。建议开发者在编写循环时考虑编译器优化和效率。未来研究可扩展到不同编译器、优化级别及硬件架构的影响。
|
21天前
|
算法 Linux 测试技术
Linux编程:测试-高效内存复制与随机数生成的性能
该文探讨了软件工程中的性能优化,重点关注内存复制和随机数生成。文章通过测试指出,`g_memmove`在内存复制中表现出显著优势,比简单for循环快约32倍。在随机数生成方面,`GRand`库在1000万次循环中的效率超过传统`rand()`。文中提供了测试代码和Makefile,建议在性能关键场景中使用`memcpy`、`g_memmove`以及高效的随机数生成库。
|
29天前
|
Java 测试技术 Web App开发
《手把手教你》系列技巧篇(六十二)-java+ selenium自动化测试-RemoteWebDriver让你的代码与测试分离(远程测试)
【6月更文挑战第3天】本文介绍了在没有本地浏览器的情况下,如何使用RemoteWebDriver进行远程自动化测试。RemoteWebDriver分为客户端和服务端,客户端运行测试代码,服务端启动服务。服务端需要安装JDK、浏览器和对应的WebDriver,并启动selenium-server-standalone.jar。客户端通过URL连接到服务端,并指定预期的浏览器类型。这样,客户端的测试代码就能远程控制服务端的浏览器执行自动化测试。RemoteWebDriver的优点包括跨平台和浏览器测试、提高测试稳定性以及使测试环境和执行代码的机器分离。
33 3