黑马程序员技术交流社区

标题: 【上海校区】String字符串的基本使用 [打印本页]

作者: 偷树的光头强    时间: 2019-5-19 11:05
标题: 【上海校区】String字符串的基本使用
本帖最后由 偷树的光头强 于 2019-5-20 10:12 编辑

                                                  String字符串的基本使用


一、String类的概述
java.lang.String 类代表字符串。Java程序中所有的字符串文字(例如"abc" )都可以被看作是实现此类的实例。
1.特点
1)字符串不变:字符串的值在创建后不能被更改。
例:
String s1 = "abc";s1 += "d";System.out.println(s1); // "abcd" // 内存中有"abc","abcd"两个对象,s1从指向"abc",改变指向,指向了"abcd"。
2)因为String对象是不可变的,所以它们可以被共享。
例:
String s1 = "abc";
String s2 = "abc";
// 内存中只有一个"abc"对象被创建,同时被s1和s2共享。
3)“abc”等效于char[] data = {'a','b','c'}但是底层原理是字节数组( byte[] )
例:
String str = "abc";
相当于:
char data[] = {'a', 'b', 'c'};     
String str = new String(data);
// String底层是靠字符数组实现的。



2.构造方法



3.判断方法



4.==和equals的区别



5.获取功能的方法



6.转换功能的方法



7.分割方法



二、StringBuilder的使用
1.概述
StringBuilder又称为可变字符序列,它是一个类似于 String 的字符串缓冲区,通过某些方法调用可以改变该序列的长度和内容。原来StringBuilder是个字符串的缓冲区,即它是一个容器,容器中可以装很多字符串。并且能够对其中的字符串进行各种操作。它的内部拥有一个数组用来存放字符串内容,进行字符串拼接时,直接在数组中加入新内容。StringBuilder会自动维护数组的扩容。原理如下图所示:(默认16字符空间,超过自动扩充) 2.StringBuilder类和String类的区别
3.构造方法
4.常用方法

5.StringBuilder和String相互转换

public String toString():通过 toString() 就可以实现把 StringBuilder 转换为 String
public StringBuilder(String s):通过构造方法就可以实现把 String 转换为 StringBuilder









欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2