首页 > 代码库 > java中StringBuilder为单线程做的,StringBuffer相反
java中StringBuilder为单线程做的,StringBuffer相反
//没有sycronized修饰method,是线程不安全的,--StringBuffer来弥补这个缺点,但速度就慢了
并没有测试出来::
1 /** 2 * 3 */ 4 package com.breaver.test.string; 5 6 /** 7 * @author zzf 8 *@date 2017年6月22日 下午11:09:36 9 */ 10 public class TestStringBuilder implements Runnable{ 11 public static StringBuilder strs=new StringBuilder("my-str:"); 12 private String str; 13 /** 14 * @param args 15 */ 16 17 public static void main(String[] args) { 18 // TODO Auto-generated method stub 19 // TestStringBuilder.test(); 20 new Thread(new TestStringBuilder("123")).start(); 21 new Thread(new TestStringBuilder("abc")).start(); 22 } 23 public TestStringBuilder(String a) { 24 super(); 25 // TODO Auto-generated constructor stub 26 str=a; 27 } 28 @Override 29 public void run() { 30 // TODO Auto-generated method stub 31 try{ 32 while(true){ 33 System.out.println(strs.toString()); 34 Thread.sleep(1000); 35 strs.append(str); 36 } 37 }catch (Exception e) { 38 // TODO: handle exception 39 e.printStackTrace(); 40 } 41 } 42 public static void test(){ 43 StringBuilder builder =new StringBuilder(); 44 System.out.println(builder.toString()+":"+builder.capacity()); 45 builder.append("123"); 46 System.out.println(builder.toString()+":"+builder.capacity()); 47 builder.append("asssssssssssssqwqw123"); 48 System.out.println(builder.toString()+":"+builder.capacity() 49 +"::fact-size:"+builder.length()); 50 builder.append("Aasssssssssssssqwqw123"); 51 System.out.println(builder.toString()+":"+builder.capacity() 52 +"::fact-size:"+builder.length()); 53 } 54 }
java中StringBuilder为单线程做的,StringBuffer相反
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。