String类StringBuffer和StringBuilder类
Posted fax1996
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了String类StringBuffer和StringBuilder类相关的知识,希望对你有一定的参考价值。
String
String类有11种构造方法,这些方法提供不同的参数来初始化字符串,比如提供一个字符数组参数:
1 package test; 2 3 public class Test{ 4 public static void main(String args[]){ 5 char[] helloArray = { ‘h‘, ‘e‘, ‘l‘, ‘l‘, ‘o‘, ‘.‘}; 6 String helloString = new String(helloArray); 7 System.out.println( helloString ); 8 } 9 }
hello.
StringBuffer和StringBuilder类
当对字符串进行修改的时候,需要使用StringBuffer和StringBuilder类。
和String类不同的是,StringBuffer和StringBuilder类的对象能够被多次的修改,并且不产生新的未使用对象。
StringBuilder类在Java 5中被提出,它和StringBuffer之间的最大不同在于StringBuilder的方法不是线程安全的(线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据)。
由于StringBuilder相较于StringBuffer有速度优势,所以多数情况下建议使用StringBuilder类。然而在应用程序要求线程安全的情况下,则必须使用StringBuffer类。
1 package test; 2 3 public class Test{ 4 public static void main(String args[]){ 5 StringBuffer sBuffer = new StringBuffer(" test"); 6 sBuffer.append(" String Buffer"); 7 System.out.println(sBuffer); 8 } 9 }
以上是关于String类StringBuffer和StringBuilder类的主要内容,如果未能解决你的问题,请参考以下文章
重温java中的String,StringBuffer,StringBuilder类
Java StringBuffer 和 StringBuilder 类
Java StringBuffer和StringBuilder类