`

apache的replace,trim方法 StringUtils.replace(),StringUtils.trimWhitespace() java原生

阅读更多

apache的replace,trim方法 StringUtils.replace(),StringUtils.trimWhitespace() 
java原生的replace,trim方法之间性能的巨大差别。 

Java代码  收藏代码
  1. public class App   
  2. {  
  3.     final static String teString = "    555555599999999999999999aaa sss ssaaaaaaaaaaaaaatasdtatastasrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa      ";   
  4.     public static void main( String[] args )  
  5.     {  
  6.         int t = 100000;  
  7.          long start1 = System.nanoTime();  
  8.          long stringUtilsReplaceTime = 0;  
  9.          long stringUtilsTrimTime = 0;  
  10.          long stringReplaceTime = 0;  
  11.          long stringTrimTime = 0;  
  12.          for(int i= 0;i<t;i++){  
  13.            StringUtils.replace(teString,"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","b");  
  14.          }  
  15.          stringUtilsReplaceTime= System.nanoTime()-start1;  
  16.            
  17.            
  18.           start1 = System.nanoTime();  
  19.          for(int i= 0;i<t;i++){  
  20.            teString.replace("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa""b");  
  21.          }  
  22.            
  23.          stringReplaceTime = System.nanoTime()-start1;  
  24.   
  25.         start1 = System.nanoTime();  
  26.        for(int i= 0;i<t;i++){  
  27.            teString.trim();  
  28.        }  
  29.        stringTrimTime = System.nanoTime()-start1;  
  30.          
  31.          
  32.         start1 = System.nanoTime();  
  33.        for(int i= 0;i<t;i++){  
  34.             
  35.            StringUtils.trimWhitespace(teString);  
  36.        }  
  37.          
  38.        stringUtilsTrimTime = System.nanoTime()-start1;  
  39.          
  40.        System.out.println("stringUtilsReplaceTime:"+stringUtilsReplaceTime);  
  41.        System.out.println("stringReplaceTime     :"+stringReplaceTime);  
  42.        System.out.println("stringUtilsTrimTime   :"+stringUtilsTrimTime);  
  43.        System.out.println("stringTrimTime        :"+stringTrimTime);  
  44.     }  
  45.    
  46. }  


输出结果为: 
stringUtilsReplaceTime:293389595 
stringReplaceTime     :1019421816 
stringUtilsTrimTime   :176730378 
stringTrimTime        :3888271 


Java代码  收藏代码
  1. public class App   
  2. {  
  3.     final static String teString = "    555555599999999999999999aaa sss ssaaaaaaaaaaaaaatasdtatastasrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa      ";   
  4.     public static void main( String[] args )  
  5.     {  
  6.         int t = 100;  
  7.          long start1 = System.nanoTime();  
  8.          long stringUtilsReplaceTime = 0;  
  9.          long stringUtilsTrimTime = 0;  
  10.          long stringReplaceTime = 0;  
  11.          long stringTrimTime = 0;  
  12.          for(int i= 0;i<t;i++){  
  13.            StringUtils.replace(teString,"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","b");  
  14.          }  
  15.          stringUtilsReplaceTime= System.nanoTime()-start1;  
  16.            
  17.            
  18.           start1 = System.nanoTime();  
  19.          for(int i= 0;i<t;i++){  
  20.            teString.replace("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa""b");  
  21.          }  
  22.            
  23.          stringReplaceTime = System.nanoTime()-start1;  
  24.   
  25.         start1 = System.nanoTime();  
  26.        for(int i= 0;i<t;i++){  
  27.            teString.trim();  
  28.        }  
  29.        stringTrimTime = System.nanoTime()-start1;  
  30.          
  31.          
  32.         start1 = System.nanoTime();  
  33.        for(int i= 0;i<t;i++){  
  34.             
  35.            StringUtils.trimWhitespace(teString);  
  36.        }  
  37.          
  38.        stringUtilsTrimTime = System.nanoTime()-start1;  
  39.          
  40.        System.out.println("stringUtilsReplaceTime:"+stringUtilsReplaceTime);  
  41.        System.out.println("stringReplaceTime     :"+stringReplaceTime);  
  42.        System.out.println("stringUtilsTrimTime   :"+stringUtilsTrimTime);  
  43.        System.out.println("stringTrimTime        :"+stringTrimTime);  
  44.     }  
  45.    
  46. }  


结果为: 
stringUtilsReplaceTime:94864540 
stringReplaceTime     :8341259 
stringUtilsTrimTime   :953821 
stringTrimTime        :57856 

分享到:
评论
2 楼 lurenjiaxxy 2013-11-15  
我这边测下来可是StringUtils比较快,StringUtils.trimWhitespace() 这个也没有,不知道你用的啥版本。。。。。。
1 楼 cgddm 2013-04-28  

相关推荐

    org.apache.commons.lang3.StringUtils.jar.rar

    在实际使用 `common-lang3.jar` 时,你可以通过导入 `org.apache.commons.lang3.StringUtils` 类并调用相应的方法来提升字符串处理的效率和代码的可读性。由于这个库经过广泛测试和社区支持,所以它是可靠的,可以在...

    StringUtils

    `StringUtils` 是一个针对 `java.lang.String` 类型对象进行操作的工具类,它作为 JDK 内置 `String` 类方法的一种补充。与原生的 `String` 类不同的是,`StringUtils` 提供了更加丰富的字符串处理功能,并且在设计...

    StringUtils的用法

    这些工具方法极大地简化了我们对 Java 中字符串的操作,尤其是在处理可能为 null 的字符串时,StringUtils 的 null 安全特性使得代码更健壮,不易出现空指针异常。在日常开发中,熟练掌握并使用 StringUtils 可以...

    commons-lang-StringUtils.zip

    Commons Lang是Apache软件基金会开发的一个Java工具包,它提供了许多实用的函数,扩展了Java标准库中关于字符串处理的功能。`StringUtils`类是这个工具包中的核心类之一,专门用于处理字符串的各种操作,包括但不...

    StringUtils函数全集

    为了方便开发者高效地进行字符串操作,Apache Commons Lang库提供了一个强大的工具类——`StringUtils`。此工具类提供了丰富的静态方法来帮助开发者简化字符串处理任务。本文将详细介绍`StringUtils`中的几个常用...

    StringUtils(最新)

    `StringUtils` 是 Apache Commons Lang 库中的一个核心类,提供了大量关于字符串操作的实用方法,旨在作为 Java 核心库的扩展。这个库在 `commons-lang-2.5` 版本中是最新的,尽管现在可能有更新的版本,但这个版本...

    StringUtils.docx

    String replacedStr9 = StringUtils.replace(str9, "World", "Java"); System.out.println(replacedStr9); // 输出 "Hello, Java!" String str10 = "Not found"; String replacedStr10 = StringUtils.replace(str10...

    StringUtils 中文API

    `org.apache.commons.lang.StringUtils` 是 Apache Commons Lang 库中的一个类,提供了对字符串操作的一系列实用方法。这些方法通常比 Java 标准库提供的方法更加强大、灵活,并且能够更好地处理 `null` 值的情况。...

    StringUtils jar包

    `StringUtils` jar包是Java开发中的一个实用工具库,它为处理字符串提供了许多方便的方法。这个库主要由Apache Commons Lang项目提供,这是一个广泛使用的开源组件,旨在补充Java标准库中对于字符串操作的功能不足。...

    Java中StringUtils工具类的一些用法实例

    在Java编程中,Apache Commons Lang库提供了一个名为`StringUtils`的工具类,它扩展了Java标准库中的`String`类,提供了许多实用的字符串处理方法。这些方法在处理字符串时非常方便,尤其对于null安全性和空白字符的...

    StringUtils工具类的使用

    在Java编程中,StringUtils是一个非常实用的工具类,它提供了大量用于处理字符串的方法,极大地简化了开发者对字符串的操作。这个工具类通常包含在Apache Commons Lang库中,它提供了许多Java内置String类没有的功能...

    StringUtils的各项用法

    在Java编程中,处理字符串是常见的任务,Apache Commons Lang库中的StringUtils类提供了丰富的字符串操作方法,极大地提高了开发效率。本文将深入探讨StringUtils的几个重要功能,包括空字符串检查、清除空白字符、...

    org.apache.tools.zip解决解压乱码问题

    import org.apache.tools.zip.ZipEntry; import org.apache.tools.zip.ZipFile; import org.apache.tools.zip.ZipOutputStream; /** * * 类名: ZipUtil.java * 描述:压缩/解压缩zip包处理类 * 创建...

    B4A - StringUtils.rar_android_b4a_basic_strings_utilities

    在Android开发领域,Basic4Android(B4A)是一个强大的编程环境,它允许开发者使用简单的Basic语言来构建原生Android应用程序。"StringUtils.rar_android_b4a_basic_strings_utilities"这个压缩包,显然专注于介绍B4...

    StringUtils api 中文 英文 对照

    `org.apache.commons.lang.StringUtils` 是一个在 Java 开发中广泛使用的工具类,它提供了一系列用于处理字符串的方法,这些方法能够安全地处理 `null` 值,并且具备较高的性能。本文将详细介绍 `StringUtils` 中的...

    Commons培训

    2. **org.apache.commons.lang.builder**:该包提供了一系列用于快速生成Java类中常见的方法(如`toString()`、`hashCode()`、`equals()`)的工具类。 3. **org.apache.commons.lang.enum**:这是一个旧的枚举处理包...

    commons-lang.rar

    在"Java校验身份证号是否合法"的场景中,Apache Commons Lang的`StringUtils`类可能被用来处理身份证号的验证字符串,例如检查其是否为空,或者使用替换和分割方法进行格式校验。 此外,`commons-lang-2.6.jar`还...

    StringUtils (Lang 2_3 API)

    `StringUtils`是Apache Commons Lang库中的一个核心工具类,它提供了大量的静态方法,用于处理字符串。这个库在Java开发中非常常见,因为它弥补了Java标准库中对字符串操作的不足。`StringUtils`类包含了多种实用...

    StringUtils 字符串常用工具

    `StringUtils` 类通常位于 `org.apache.commons.lang3` 包下,它是 Apache Commons Lang 库的一部分。 Apache Commons Lang 是一个用于扩展 Java 核心库的项目,提供了很多实用的工具类,包括字符串处理、数组操作...

Global site tag (gtag.js) - Google Analytics