当前位置: 首页 > news >正文

杭州哪里可以做网站推广谷歌seo

杭州哪里可以做网站推广,谷歌seo,做网站运营工资是不是很低,wordpress 发送邮件插件StringBuffer、StringBuilder 文章目录 StringBuffer、StringBuilderStringBuffer和StringBuilder的理解可变性分析对于String对于StringBuilder 常用方法执行效率对比 StringBuffer和StringBuilder的理解 String 不可变的字符序列 StringBuffer 可变的字符序列 JDK1.0声明&…

StringBuffer、StringBuilder

文章目录

  • StringBuffer、StringBuilder
    • StringBuffer和StringBuilder的理解
    • 可变性分析
      • 对于String
      • 对于StringBuilder
    • 常用方法
    • 执行效率对比

StringBuffer和StringBuilder的理解

String 不可变的字符序列

StringBuffer 可变的字符序列 JDK1.0声明,线程安全 , 效率低

StringBuilder 可变的字符序列 JDK5.0声明 ,线程不安全 ,效率高

可变性分析

对于String

String s1 = new String() ; //char[] value = new char[0];
String s2 = new STring("abc");	//char[] value = new char[3]{'a','b,'c'};

对于StringBuilder

char []value;	//存储字符序列
int count;	//实际存储的字符个数
StringBuilder sBuffer1 = new StringBuilder();	//char[] value = new char[16];
StringBuilder sBuffer2 = new StringBuilder("abc");	//char[] value = new char[16 + "abc".length];
sBuffer1.append("ab");	//value[0] = 'a'; value[1] = 'c';
sBuffer1.append("b");	//value[2] = 'b';
//最多修改16个
//一旦count超过value.length时,就需要扩容
//默认扩容为原有容量的2倍 + 2 。 并将原有的value数组中的元素复制到新的数组中
  • 如果开发中,需要频繁的针对于字符串进行 增删改 等操作 ,建议使用StringBuffer StringBuilder替换String

  • 若不涉及线程安全问题,建议使用StringBuffer 替换 StringBuilder

  • 若大体确定需要操作的字符的个数,建议使用int capacity的构造器,避免底层多次扩容操作,效率降低

常用方法

StringBuilder、StringBuffer的API是完全一致的,并且很多方法与String相同。

//常用API1StringBuffer append(xx):提供了很多的append()方法,用于进行字符串追加的方式拼接
(2StringBuffer delete(int start, int end):删除[start,end)之间字符
(3StringBuffer deleteCharAt(int index):删除[index]位置字符
(4StringBuffer replace(int start, int end, String str):替换[start,end)范围的字符序列为str
(5void setCharAt(int index, char c):替换[index]位置字符
(6char charAt(int index):查找指定index位置上的字符
(7StringBuffer insert(int index, xx):在[index]位置插入xx
(8int length():返回存储的字符数据的长度
(9StringBuffer reverse():反转
//其他API1int indexOf(String str):在当前字符序列中查询str的第一次出现下标
(2int indexOf(String str, int fromIndex):在当前字符序列[fromIndex,最后]中查询str的第一次出现下标
(3int lastIndexOf(String str):在当前字符序列中查询str的最后一次出现下标
(4int lastIndexOf(String str, int fromIndex):在当前字符序列[fromIndex,最后]中查询str的最后一次出现下标
(5String substring(int start):截取当前字符序列[start,最后]6String substring(int start, int end):截取当前字符序列[start,end)7String toString():返回此序列中数据的字符串表示形式
(8void setLength(int newLength) :设置当前字符序列长度为newLength
  • StringBuffer append(xx)

    public class StringBufferTest{public static void main(String []args){StringBuilder sBuilder = new StringBuilder();sBuilder.append("abc").append("def");	//方法链调用System.out.println(sBuilder);	//abcdef}
    }
    
  • StringBuffer delete(int start, int end)

     public class StringBufferTest{public static void main(String []args){StringBuilder stringBuilder = new StringBuilder("helloworld");System.out.println(stringBuilder.delete(5, stringBuilder.length()));	//hello}}
    
  • StringBuffer deleteCharAt(int index)

    public calss StringBufferTest{public static void main(String []args){StringBuilder stringBuilder = new StringBuilder("Java");System.out.println(stringBuilder.deleteCharAt(0));  //ava}
    }
    
  • StringBuffer replace(int start, int end, String str)

    public class StringBufferTest{public static void main(String []args){StringBuilder stringBuilder = new StringBuilder("Java");System.out.println(stringBuilder.replace(0, stringBuilder.length(), "helloworld")); //helloworldSystem.out.println(stringBuilder);  //helloworld}
    }
    

执行效率对比

效率排序

StringBuilder > StringBuffer > String

public class RuntimeTest{public static void main(String []args){long startTime = 0L;long endTime = 0L;String text = "";StringBuffer buffer = new StringBuffer("");StringBuilder builder = new StringBuilder("");startTime = System.currentTimeMillis();for (int i = 0; i < 20000; i++) {buffer.append(String.valueOf(i));}endTime = System.currentTimeMillis();System.out.println("StringBuffer运行时间" + (endTime - startTime));startTime = System.currentTimeMillis();for (int i = 0; i < 20000; i++) {builder.append(String.valueOf(i));}endTime = System.currentTimeMillis();System.out.println("StringBuilder运行时间" + (endTime - startTime));startTime = System.currentTimeMillis();for (int i = 0; i < 20000; i++) {text = text + i;}endTime = System.currentTimeMillis();System.out.println("String运行时间" + (endTime - startTime));}
}
//
//StringBuffer运行时间2
//StringBuilder运行时间1
//String运行时间274
http://www.dinnco.com/news/76097.html

相关文章:

  • 义乌做网站如何提高网站排名seo
  • 如何建设网站的管理平台国外推广都是怎么推广
  • 网站自助制作网站怎么接广告
  • 手机网站设置在哪里找如何优化网站
  • 网站设计和网站建设广州疫情最新消息
  • 承包工地的网站如何做seo搜索引擎优化
  • 网站引导页动态效果怎么做的营销活动推广方案
  • 泉州网站建设兼职武汉做网页推广公司
  • 网站中的ppt链接怎么做的百度竞价网站
  • 中国在数码网站注册域名好 gt网络广告投放渠道有哪些
  • 做私活的网站新闻稿范文300字
  • 万网是什么企业网站优化推广
  • vs怎么做网站网络优化大师下载
  • e脉通网站永久域名查询
  • 更改了网站关键词后要怎么做中央网站seo
  • 制作企业网站需要什么费用长沙优化科技有限公司
  • 黄陌陌网站怎么做凌哥seo
  • 企业网站备案查询如何搜索关键词
  • 酒店网站建设方案国内网络销售平台有哪些
  • 济南做手机网站无锡seo网站管理
  • 长沙出名的网站设计推广营销策略从哪几个方面分析
  • 德州手机网站建设费用上海网络推广
  • 网页历史记录恢复seo推广效果
  • 北京中高端网站建设易观数据app排行
  • 智联招聘网站可以做两份简历吗天堂网
  • 物理机安装虚拟机做网站好处长沙正规seo优化价格
  • 做网站一般用什么几号字海南seo代理加盟供应商
  • 张家口做公司网站舆情报告范文
  • wordpress修改固定链接重定向谷歌seo快速排名软件首页
  • 河南哪里网站建设公司网站关键词优化公司哪家好