当前位置: 首页 > 知识库问答 >
问题:

StringBuffer和StringBuilder哪个在执行过程中花费更多的时间?[副本]

卜存
2023-03-14
     long startTime=System.currentTimeMillis();     
     StringBuilder builder=new StringBuilder();
     StringBuffer buffer=new StringBuffer();

    for(int i=0;i<1000;i++){
            builder.append("Okay");}

    System.out.println("Builder Elapsed Time  :"+(System.currentTimeMillis()- 
    startTime));
    
    long bufferStartTime=System.currentTimeMillis();
    for(int i=0;i<1000;i++){
    buffer.append("Okay");}
    System.out.println("Buffer Elapsed Time  :"+(System.currentTimeMillis()- 
    bufferStartTime));
    
    OUTPUT:-
    Builder Elapsed Time:1
    Buffer Elapsed Time :0
    StringBuilder builder=new StringBuilder();
    StringBuffer buffer=new StringBuffer();
    long startTime=System.currentTimeMillis();
    for(int i=0;i<1000;i++) {
    buffer.append("Okay");
    }
    System.out.println("Buffer Elapsed Time  :"+(System.currentTimeMillis()- 
    startTime));    
    long builderStartTime=System.currentTimeMillis();
    for(int i=0;i<1000;i++){
    builder.append("Okay");}
    System.out.println("Builder Elapsed Time  :"+(System.currentTimeMillis()- 
    builderStartTime));

   OUTPUT:-
   Buffer Elapsed Time:1
   Builder Elapsed Time:0

共有1个答案

彭畅
2023-03-14

不,您不能在Java中重写静态方法,尽管您可以在子类中声明具有相同签名的方法。

按照Java编码惯例,静态方法应该通过类名而不是对象来访问。简而言之,Java中静态方法可以重载,但不能重写

(资料来源)

 类似资料:
  • 本文向大家介绍C#计算程序执行过程花费时间的方法,包括了C#计算程序执行过程花费时间的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#计算程序执行过程花费时间的方法。分享给大家供大家参考。具体如下: 计算执行完程序花费的时间: 希望本文所述对大家的C#程序设计有所帮助。

  • 问题内容: 请告诉我一个实时的情况来比较String,StringBuffer和StringBuilder? 问题答案: 如果使用的是JGraph,则应尝试为算法设计的。它的功能之一是使用库进行可视化。它仍然开发,但相当稳定。我前段时间分析了算法的复杂性。其中一些并不是最快的,但是如果你要自己实现它们并需要显示图形,那么它可能是最佳选择。我真的很喜欢使用它的API,当时我不得不快速编写一个在图形上

  • 问题内容: 和之间的主要区别是什么?在决定其中任何一个时是否存在性能问题? 问题答案: 是同步的,不是。

  • 问题内容: 和之间的主要区别是什么?在决定其中任何一个时是否存在性能问题? 问题答案: 因为不是更快。 这是一个简单的基准测试: 一个试运行给出的数字2241 ms为StringBufferVS 753 ms的StringBuilder。

  • 我在学习java stream api时在代码中发现了这个问题。 这是我的代码 我在sts和inteliJ IDE上试用了这段代码,结果都是一样的。并行比顺序需要更长的时间。我的JDK有问题吗?请建议。