package _6_5_字符串生成器;
public class _6_5_Example_1 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
//StringBuilder类
String str="";
long startTime=System.currentTimeMillis();//定义执行操作的起始时间
for(long i=0;i<100000;i++){
str=str+i;//循环增加字符
}
long endTime=System.currentTimeMillis();//定义对字符串操作后的时间
long time=System.currentTimeMillis();//计算执行操作的时间
System.out.println("String 消耗时间:"+time);
StringBuilder builder=new StringBuilder("");
startTime=System.currentTimeMillis();
for(long j=0;j<100000;j++)
builder.append(j);//循环增加字符
endTime=System.currentTimeMillis();
time=endTime-startTime;
System.out.println("StringBuilder 消耗时间:"+time);
}
}
package _6_5_字符串生成器;
//StringBuilder类的常用方法
public class _6_5_Example_2 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
String s1="Hello World !";
StringBuilder builder1=new StringBuilder("I love China!");
System.out.println("追加前builder1的值是:"+builder1);
builder1.append(s1);
System.out.println("追加后builder1的值是:"+builder1);
StringBuffer s2=new StringBuffer("World");
StringBuilder builder2=new StringBuilder("Hello");
System.out.println("追加前builder2的值是:"+builder2);
builder2.append(s2);
System.out.println("追加后builder2的值是:"+builder2);
String s3="int";
String s4="ser";
StringBuilder builder3=new StringBuilder(s3);
System.out.println("追加前builder3的值是:"+builder3);
builder3.insert(2, s4);
System.out.println("追加后builder3的值是:"+builder3);
StringBuilder builder4=new StringBuilder("StringBuilderd");
System.out.println("删除指定字符串前builder4是:"+builder4);
StringBuilder s5=builder4.delete(5, 5);
System.out.println("删除指定字符串后是:"+s5);
StringBuilder s6=builder4.delete(5, 10);
System.out.println("删除指定字符串后是:"+s6);
StringBuilder builder5=new StringBuilder("Hello World");
String s7=builder5.toString();
System.out.println("String="+s7);
System.out.println("StringBuilder="+builder5);
}
}
package _6_5_字符串生成器;
//将汉字和字母转换成Unicode码
//将字符串添加到字符数组,再将字符数组中的字符转换成Unicode码添加到字符串生成器中
public class _6_5_Example_3 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
String text="我喜欢那个 XXX";
char charArray[]=text.toCharArray();//获取字符串的字符数组
StringBuilder builder=new StringBuilder();//创建字符串生成器
for(int i=0;i<charArray.length;i++){//遍历字符数组
builder.append((int)charArray[i]+" ");//将每个字符转换成Unicode码
//并添加到字符串生成器中
}
System.out.println(text+"的Unicode码为:\n"+builder.toString());
}
}
package _6_5_字符串生成器;
//去掉字符串中的重复字符
public class _6_5_Example_4 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
String s="命运如同海风--吹着青春的舟,飘摇的,曲折的,渡过了时间的海!";
StringBuilder builder=new StringBuilder(s);
System.out.println("原来的字符串是:"+builder.toString());
System.out.println("原来字符串的长度为:"+builder.toString().length());
for(int i=0;i<builder.length();i++){
for(int j=i+1;j<builder.length();j++){
if(builder.charAt(i)==builder.charAt(j))
builder.deleteCharAt(j);
}
}
System.out.println("现在的字符串是:"+builder.toString());
System.out.println("现在的字符串的长度为:"+builder.toString().length());
}
}