API:JDK中提供的各种功能的Java类,我们使用时可以进行查询,方便程序的快速编写
比如我们之前用到的Scanner,String都可以通过API来查询使用方法
String类
//把字符数组的数据封装成字符串对象
char[] ch = {"a","b","c","d","e"}
String s = new String(ch)
字符串是一种比较特殊的引用数据类型,直接输出字符串对象输出的是该对象中的数据。
构造方法
1 String(String original):把字符串数据封装成字符串对象
2 String(char[] value):把字符数组的数据封装成字符串对象
3 String(char[] value, int index, int count):把字符数组中的一部分数据封装成字符串对象
注意:字符串的内容是存储在方法区中的常量池的,为了方便字符串的重复使用
通过构造方法创建字符串对象是在堆内存。
直接赋值方式创建对象是在方法区的常量池。
判断功能
boolean equals(Object obj):比较字符串的内容是否相等
boolean equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写
boolean startsWith(String str):判断字符串对象是否以指定的str开头
boolean endsWith(String str):判断字符串对象是否以指定的str结尾
获取功能
int length():获取字符串的长度,也就是字符个数
char charAt(int index):获取指定索引处的字符
int indexOf(String str):获取str在字符串对象中第一次出现的索引
String substring(int start):从start开始截取字符串
String substring(int start, int end):从start开始,到end结束截取字符串。包括start,不包括end
转换功能
char[] toCharArray():把字符串转换为字符数组
String toLowerCase():把字符串转换为小写字符串
String toUpperCase():把字符串转换为大写字符串
其他功能
String trim(): 去除字符串两端空格
String[] split(String str): 按照指定符号分割字符串
reverse(String): 实现字符串的反转
StringBuilder
StringBuilder:是一个可变的字符串。字符串缓冲区类。
String和StringBuilder的区别: String的内容是固定的, StringBuilder的内容是可变的
字符串拼接非常消耗内存,所有采用StringBuilder
成员方法
public int capacity():返回当前容量 (理论值)
public int length():返回长度(已经存储的字符个数)
public StringBuilder append(任意类型):添加数据,并返回自身对象
public StringBuilder reverse():反转功能
两者之间的相互转换
StringBuilder ------->String:
StringBuilder s = new StringBuilder();
s.append("hello");
String ss = s.toString();
String ----->StringBuilder:
String s = "hello";
StringBuilder sb = new StringBuilder(s);