字符串类
1.String
字符串常量,String的数据就是常量 值不可变 final char[]value 线程安全
字面量数据类型 基本+String
public final class String
extends Object
implements Serializable,Comparable<String>,CharSquence
1.1常用构造
1.String(byte[] bytes) 将字节数组的数据转换成当前平台下默认编码格式的字符串数据
String(byte[] bytes,Charset charset)将字节数组的数据转换成制定编码格式的字符串数据
String (byte[] bytes,String charsetName)常用
String (byte[] bytes,int offset,int length)常用 offset:开始索引将字节数组的数据转换成制定编码格式的字符串数据
编码格式:UTF-8(推荐)
一个汉字3字节 一个字母1个字节
gbk
一个汉字2字节 一个字母一个字节
手动解码:将看不懂的数据转换成看的懂得数据
编码:将看的懂得数据转换成看不懂的数据
2.String(char[] value) 常用
String(char[] value, int offset, int count)
3.String(String original) 常用
4.String(StringBuffer buffer)
5.String(StringBuilder builder)
1.2常用功能方法
1.2.1比较判断方法
boolean equalsIgnoreCase(String anotherString) 判断字符串anotherString是否与当前字符串相等忽略大小写形式
int compareTo(String anotherString)根据ACSII码比较字符串anotherString和当前字符串的大小,比较方式类似于C语言中的strcmp函数
boolean startsWith(String prefix)判断当前字符串是否已prefix为开头
boolean endWith(String suffix)判断当前字符串是否已prefix为后缀
1.2.2字符串搜索
如果需要搜索某个字符或(或某个子串)在字符串中是否出现过,这就要使用到indexOf方法和lastindexOf()方法。
int indexOf(int ch) 搜索字符ch在当前字符串第一次出现的索引,没有出现则返回-1
int indexOf(String str)搜索字符串str在当前字符串中第一次出现的索引,没有出现则返回-1
int lastIndexOf(int ch)搜索字符ch在当前字符串最后一次出现的索引,没有出现则返回-1
int lastIndexOf(String str)搜索字符str在当前字符串最后一次出现的索引,没有出现则返回-1
1.2.3提取字符串
char charAt(int index)用于指定位置提取单个字符,该位置有index指定,索引值必须为负
String substring(int index)用手提取index指定的位置开始的字符串部分
String substring(int begin,int end)用于提取begin和end位置之间的字符串部分
String concat(String str)用于连接两个字符串,并创建一个包含调用字符串的字符串对象
String replace (char oldCher,char new Char)用于将调用字符串中出现oldchar指定的字符全部替换为newChar指定的字符
replaceAll(String regex,String replacement)用于将调用字符串中出现或者匹配regex的字符串全部替换为replacement指定的字符
String trim()用于返回一个前后不含任何控的字符串的副本
Stringp[]split(String regex)以么某个字符串regex对字符串进行分割返回数组
1.2.4到小写转换
有时候我们需要将字符串中字符的大小写形式进行转换
String toUpperCase() 返回当前字符串的全大写形式
String toLowerCase() 返回坊前字符串的全小写形式
1.2.5数据格式转化
方法原型 | 说明 |
---|---|
byte getBytes() | 返回当前字符串转化成byte型数组的形式(即字符串在内存中保存的最原始的二进制形态) |
char[]toCharArray() | 返回坊前字符串的字符数组形式,类似于c语言中字符串的保存形式 |
1.2.6 正则表达式
正则表达式就是结合特殊的语法以及特殊的字符组成字符串内容。
用来校验,替换与正则模式想符的文本内容
l 正则在线手册:https://tool.oschina.net/uploads/apidocs/jquery/regexp.html
l 语法:"^([]{})([]{})([]{})$"
场景:一般都是校验用户录入的数据是否符合正则要求
l String类里面支持正则表达式的方法
String[] split(String regex)
String replaceFirst(String regex, String replacement)
String replaceAll(String regex, String replacement)
boolean matches(String regex)