JAVA字符串学习笔记

来源:互联网 发布:淘宝abc类违规 编辑:程序博客网 时间:2024/05/23 23:28

 1.可以将字符串转换成字符数组:
 
  
public class CharAtString {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
       String str="congratulatrion";
      
       for(int i=0;i<str.length();i++)
       {
        System.out.print(str.charAt(i)+" ");
       }
      
       System.out.println();
      
       char[]str1=str.toCharArray();     //可以将字符串转换成字符数组!
       for(int i=0;i<str.length();i++)
       {
        System.out.print(str1[i]+" ");
       }
 }

}


2.在JAVA执行时会维护一个String池(Pool).对于一些可以共享的字符对象,会先在String池中查找是否存在相同的String内容,如果

有就直接返回,而不是直接创造一个新的String对象,以减少内存的耗用.

3.您也许会使用+来串联字符串以达到附加新字符或字符串的目的,介+会产生一个String实例.如果程序对这种附加字符使用很频繁,

并不建议使用+来进行字符串的串联,而是用StringBuilder类中的append方法来进行串联,可以大大缩短时间.

 
public class AppendStringTest {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
       String text="";
      
       long beginTime=System.currentTimeMillis();
      
       for(int i=0;i<10000;i++)
       {
        text=text+i;
       }
       long endTime=System.currentTimeMillis();
       System.out.println(endTime-beginTime);
      
       StringBuilder builder=new StringBuilder("");
       beginTime=System.currentTimeMillis();
       for(int i=0;i<10000;i++)
       {
        builder.append(i);
       }
       endTime=System.currentTimeMillis();
       System.out.println(endTime-beginTime);
     
 }

}


4. String类的split(0方法用来以指定的字符分割字符串.  还可以结合正则表达式来进行筛选. 

原创粉丝点击