`
zzuliuli
  • 浏览: 7301 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

字符串反序

    博客分类:
  • java
 
阅读更多

package test;

 

import java.util.Stack;

 

public class TestReverse {

@SuppressWarnings("unchecked")

public static void main(String[] args) {

long count =1000000000;

//long count =1;

String test_s = "abcdefg";

long start =System.currentTimeMillis();

//for (int j = 0; j < count; j++) {

///** 第一种方法 */

//String new_s1 = "";

//for (int i = test_s.length() - 1; i >= 0; i--) {

//new_s1 += test_s.charAt(i);

//}

////System.out.println(new_s1);

//}

//System.out.println("方法一耗时:"+(System.currentTimeMillis()-start));

 

start =System.currentTimeMillis();

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

/** 第二种方法 */

String new_s2 = "";

StringBuffer sb = new StringBuffer(test_s);

new_s2 = sb.reverse().toString();

//System.out.println(new_s2);

}

System.out.println("方法二耗时:"+(System.currentTimeMillis()-start));

 

start =System.currentTimeMillis();

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

/** 第三种方法 */

String new_s3 = "";

char[] arr1 = test_s.toCharArray();

for (int i=arr1.length-1; i>=0;i--) {

new_s3 += arr1[i];

}

//System.out.println(new_s3);

}

System.out.println("方法三耗时:"+(System.currentTimeMillis()-start));

 

start =System.currentTimeMillis();

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

/** 第四种方法 */

Stack new_s4 = new Stack();

char[] arr2 = test_s.toCharArray();

for (char c : arr2) {

new_s4.push(c);

}

for (char c : arr2) {

new_s4.pop();

//System.out.println(new_s4.pop());

}

}

System.out.println("方法四耗时:"+(System.currentTimeMillis()-start));

 

}

}

经测试第二种方式最为快速

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics