Java基础知识:Java字符串详解
本文内容
- String类的概述
- String类的使用步骤
- String类的常用方法
本文目的
能够使用String类的构造方法创建字符串对象
能够明确String类的构造方法创建对象,和直接赋值创建字符串对象的区别
能够使用文档查询String类的判断方法
能够使用文档查询String类的获取方法
能够使用文档查询String类的转化方法
java.lang.String类代表字符串。Java程序中所有的字符串文字(比如"abc")都可以被看成是实现此类的示例。类String中包括用在检查每一个字符串的方法,比如用于字符串的比较,搜索字符串、提取字符串
特点1:字符串是不变的,字符串的值在创建以后是不可以被更改的
案例:
public class var {
public static void main(String[] args) {
String str = "abc";
str += "d";
System.out.println(str);
}
}
输出结果:abcd特点2:因为String对象是不可以变的,所以他们才可以被共享。
public class var {
public static void main(String[] args) {
//内存中只有一个"abc"被创建
String s1 = "abc";
String s2 = "abc";
}
}特点3:"abc"等于char[] data = {'a','b','c'}
public class var {
public static void main(String[] args) {
char[] data = {'a','b','c'};
String str = new String(data);
System.out.println(str)
}
}
输出结果:abc3、使用步骤
查看类
java.lang.String : 此类不需要再导入
public String() :初始化新创建的String对象,可以让他表示空字符序列;
public String(char[] value) : 通过当前参数当中的字符数组来构建新的String
public String(byte[] bytes) : 通过使用平台的默认字符集解码当前参数中的字节数组来构造新的String
构造举例如下:
public class var {
public static void main(String[] args) {
//无参构造
String str0 = new String();
//通过字符数组构造字符串
char[] data = {'a','b','c'};
String str1 = new String(data);
//通过字节数组构造
byte[] bytes = {97,98,99};
String str2 = new String(bytes);
}
}
4、常用的方法:
(1)判断功能的方法
举例:
public class var {
public static void main(String[] args) {
String s1 = "hello";
String s2 = "hello";
String s3 = "HELLO";
//通过equals比较
if (s1.equals(s2)) {
System.out.println("s1.equals(s2) true");
}
if(!s1.equals(s3)) {
System.out.println("s1.equals(s3) false");
}
if(s1.equalsIgnoreCase(s3)) {
System.out.println("s1.equalsIgnoreCase(s3) true");
}
}
}(2) 获取功能的方法
public class var {
public static void main(String[] args) {
String s1 = "hello";
//字符串的长度
s1.length();
//拼接字符串
s1.concat("world");
//获取指定位置元素
s1.charAt(0);
//获取字符串中出现指定元素的位置
s1.indexOf("e");
//截取字符串
s1.substring(0,2);
}
}(3) 转换功能的方法
String s = "Hello,world"
//字符串转为字符数组
char[] arr = s.toCharArray();
//转换为字节
byte[] b1 = s1.getBytes()
//字符替换
String s2 = s1.replace("ll","LL")
//分割方法
String[] arr = s1.split(",")
