本章来讲一下什么是字符串
一、什么是字符串
在Java中,最常见的基本类型就是字符串了,哪哪都能见到,如输入语句,输出语句等!那么,什么是字符串呢,字符串就是String类,String类是Java中表示字符串的类。它是不可变的,一旦创建了一个字符串对象,就无法修改它。
二、String类和StringBuilder类有什么区别?
- String类和StringBuilder类的最主要区别在于可变性。String类是不可变的,一旦创建了一个字符串对象,就无法修改它。而StringBuilder类是可变的,可以在缓冲区中修改字符串,而不必创建新的对象。
- 另一个区别在于性能。由于String类是不可变的,对字符串进行操作时需要创建新的字符串对象,这可能会导致性能问题。StringBuilder类是可变的,可以避免这种问题,因此它的性能比String类更好。
三、创建字符串
1、创建一个String对象,并初始化一个值。
String类是不可改变的,一旦创建了一个String对象,它的值就不能改变了。
如果想对字符串做修改,需要使用StringBuffer&StringBuilder类。
//直接创建方式
String str1 = "abc";
//提供一个 字符数组 参数来初始化字符串
char[] strarray = {'a','b','c'};
String str2 = new String(strarray);
char为字符类型,String为字符串类型
String字符串是用" "来包含串的, char是用’ '来包含单字符的
String内部用来存储的结果是一个char字符数组
String 创建的字符串存储在公共池中,而 new 创建的字符串对象在堆上:
String s1 = "Runoob"; // String 直接创建
String s2 = "Runoob"; // String 直接创建
String s3 = s1; // 相同引用
String s4 = new String("Runoob"); // String 对象创建
String s5 = new String("Runoob"); // String 对象创建
2、如何将一个整数转换为字符串
可以使用Integer类的toString()方法将一个整数转换为字符串
int i = 123;
String s = Integer.toString();
3、如何将一个字符串转换为整数
可以使用Integer类的parseInt()方法将一个字符串转换为整数
String s = "123";
int i = Integer.parseInt(s);
四、字符串的常用方法
1、获取字符串长度
用于获取有关对象的信息的方法称为访问器方法。
String 类的一个访问器方法是 length() 方法,它返回字符串对象包含的字符数。
下面的代码执行后,len 变量等于 14:
public class StringDemo {
public static void main(String args[]) {
String site = "www.runoob.com";
int len = site.length();
System.out.println( "菜鸟教程网址长度 : " + len );
}
}
2、连接字符串
String 类提供了连接两个字符串的方法:
string1.concat(string2);
示例:
public class StringDemo {
public static void main(String args[]) {
String string1 = "菜鸟教程网址:";
System.out.println("1、" + string1 + "www.runoob.com");
}
}
3、字符串查找
int indexOf(String s):字符串s在指定字符串中首次出现的索引位置,如果没有检索到字符串s,该方法返回-1
int lastIndexOf(String s):字符串s在指定字符串中最后一次出现的索引位置,如果没有检索到字符串s,该方法返回-1;如果s是空字符串,则返回的结果与length方法的返回结果相同,即返回整个字符串的长度。
int idx = str.indexOf("a");//字符a在str中首次出现的位置
int idx = str.lastIndexOf("a");
4、获取指定位置的字符串
char charAt(int index)方法:返回指定索引出的字符
String str = "abcde";
char thischar = str.charAt(3);//索引为3的thischar是"d"
5、获取子字符串
String substring()方法:实现截取字符串,利用字符串的下标索引来截取(字符串的下标是从0开始的,在字符串中空格占用一个索引位置)
- substring(int beginIndex):截取从指定索引位置开始到字符串结尾的子串
- substring(int beginIndex, int endIndex):从beginIndex开始,到endIndex结束(不包括endIndex)
String str = "abcde";
String substr1 = str.substring(2);//substr1为"cde"
String substr2 = str.substring(2,4);//substr2为"cd"
6、去除字符串首尾的空格
String trim()方法
String str = " ab cde ";
String str1 = str.trim();//str1为"ab cde"
在这就不一一给你介绍了,想了解更多方法的作用可以查看Java API文档