1 java.labg.String类表示字符串
- API当中说:Java程序中所有字符串字面值都作为此类的实列实现
- 也就是说:程序中所有的双引号字符串,都是String类的对象
2字符串的特点:
- 1.字符串中的内容永远不可变。
- 2.正是因为字符串不可改变,所以字符串是可以共享的
- 3.字符效果上相当于char[]字符数组,但是底层原理是byte[]字节数组。
3创建字符串的方式:
- 三种构造方法:
- 1.public String():创建一个空表字符,不含有任何内容;
- 2.public String(char []):根据字符数组的内容来创建字符串
- 3.public String(byte []):根据字节数组来创建字符才串
- 一种直接创建:
- String str = “直接创建”;
- 注意:直接写上双引号,就是字符串对象
- 字符常量池:程序当中直接写上双引号的字符串,就保存在字符常量池中;
- 对于基本数据类型来说:==是进行数值的比较
- 对于引用数据类型来说:==是进行地址值的比较
4如果需要内方面的比较:有以下两种方法
- 第一种:public boolean equals(Object obj):参数可以是任何对象,只有参数是一个字符串是斌且是相同的内容是才会返回true;否则返回false
- 注意事项:1.equals可以接受任意对象
- 2.equals方法具有对称性,a.equals(b)和b.equals(a)是一样的
- 3.如果比较方是一个常量一个变量通常把一常量写在前面把变量写在垢面。(因为变量为null且写在前面时会报空指针异常的错误)
- 第二种方法:
- public Boolean equalsIgnoreCase(String str):忽略大小写,进行内容的比较
5字符串常用方法:
- 1.public int length():获取当前字符串中的字符的有效个数,拿到字符串的长度
- 2.public String concat(String str):字符串拼接
- 3.public char charAt(int index):获取指定索引的单个字符
- 4.public int indexOf(String str):获取参数字符串在字符中首次出现的索引,如果没有就返回-1
- 截取字符串的方法:
- 1.public String subString(int index):截取从参数开始的一直到结束的字符串
- 2.public String subString(int begin ,int end):截取从dbegin开始的到end结束的字符串
- String中与转换相关的方法:
- 1.public char[] toCharArray():将一个字符串自动生成字符串数组
- 2.public byte[] getBytes():获得当前字符底层的字节数组
- 3.public String replace(CharSequence oldString , CharSequence newString):将字符串中的oldString换成newString
- 分割字符串的方法:
- public String[] split(String regex):按照分割规则分割成若干部分
- 注意事项:
- split()方法其实是一个正则表达式