zoukankan      html  css  js  c++  java
  • String类、StringBuffer和StringBuilder类

     String类中常用方法

     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 }

  • 相关阅读:
    android升级gradle到3.4.1
    django1.10.3下admin后台管理老是显示object
    django 1.10.3 admin后台管理设置显示中文
    Linux查看版本信息
    Centos下查看mysql的版本
    Linux centos6.7网卡配置
    Linux centos 防火墙篇
    MYSQL ERROR 1045 (28000) Access denied for user (using password YES)问题的解决
    centos7中的网卡名称相关知识
    redis编译和安装出现错误
  • 原文地址:https://www.cnblogs.com/fax1996/p/9373682.html
Copyright © 2011-2022 走看看