所谓字符串就是这一连串的字符,它是由许多单个字符连接而成的,如多个英文字母所组成的一个英文单词。
字符串中可以包含任意字符,这些字符必须包含在一对双引号 " " 之内。
java中定义了 String 和 StringBuffer 两个类来封装字符串,它们都位于java.lang包中。
String类的初始化:
以下可以采用两种方式对String类进行初始化。
1.使用字符串常量直接初始化一个String对象。
String str = "abc";
“abc”表示一个字符串常量
2.使用String的构造方法初始化字符串对象,String类的构造方法如下:
方法声明 | 功能描述 |
String() | 创建一个内容为空的字符串 |
String(char[ ] value) | 根据指定的字符数组创建对象 |
String(String value) | 根据指定的字符串内容创建对象 |
如下代码例子中
public class Example {
public static void main(String[] args) {
//创建一个空的字符串
String str1 = new String();
//创建一个内容为 abcd 的字符串
String str2 = new String("abcd");
//创建一个内容为 字符数组的字符串,
//注意字符用 单引号 '' 包裹
char[] charArray = new char[]{'D','E','F'};
String str3 = new String(charArray);
System.out.println("str1:"+str1);
System.out.println("str2:"+str2);
System.out.println("str3:"+str3);
}
}
创建一个空字符串str1,输出内容也是空的。
str2通过括号里指定内容来创建新的字符串。
作为字符数组str3,将其字符数组对象放入后边括号里,创建出新的字符串。
运行结果:
String类常用的一些方法:
方法声明 | 功能描述 |
int indexOf(int ch) | 返回指定字符在此字符串中第一次出现处的索引 |
int lastIndexOf(int ch) | 返回指定字符在此字符串中最好一次出现处的索引 |
char charAt(int index) | 返回字符串中index位置上的字符,其中index的取值范围是: 0~(字符串长度-1) |
boolean endsWith(String suffix) | 判断此字符串是否以指定的字符串结尾 |
int length() | 返回字符串的长度 |
boolean equals(Object anObject) | 将此字符串与指定的字符串比较 |
boolean isEmpty() | 当且仅当字符串长度为0时返回true |
boolean startsWith(String prefix) | 判断此字符串是否以指定的字符串开始 |
boolean contains(CharSequence cs) | 判断此字符串中是否包含指定的字符序列 |
String toLowerCase() | 使用默认语言环境的规则将String中的所有字符都转换为小写 |
String toUpperCase() | 使用默认语言环境的规则将String中的所有字符都转换为大写 |
String valueOf(int i) | 返回int参数的字符串表示形式 |
char[ ] toCharArray | 将此字符串转换为一个字符数组 |
String replace(CharSequence oldstr, CharSequencenewstr) | 返回一个新的字符串,它是通过newstr替换此字符串中出现的所有oldstr得到的 |
String[ ] split(String regex) | 根据参数regex将原来的字符串分割为若干个子字符串 |
String substring(int beginIndex) | 返回一个新字符串,它包含字符串中索引beginIndex后的所有字符 |
String substring(int beginIndex,int endIndex) | 返回一个新字符串,它包含此字符串中从索引beginIndex到索引endIndex之间的所有字符 |
String trim() | 返回一个新字符串,它去除了原字符串首尾的空格 |