I am trying to see the execution speed of StringBuffer and StringBuilder but every time I am getting different results.
CASE ONE
     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
CASE TWO
    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
I have tried two cases but getting different results from anyone please help me why it's happening.
 
     
     
     
    