String 字符串常见操作

来源:互联网 发布:windows工作组和用户组 编辑:程序博客网 时间:2024/05/18 21:11

* 字符串字面值就是字符串的一个对象; 比如: “abc”
* 字符串一旦被创建就不能被改变. 不能被改变指的是值不能被改变
** 构造方法
* public String(byte[] bytes):把一个字节数组转换成一个字符串
* public String(byte[] bytes , int off , int len)把一个字节数组中的一部分转换成一个字符串
* public String(char[] chs):把一个字符数组转换成一个字符串
* public String(char[] chs , int off , int len)把一个字符数组中的一部分转换成一个字符串
* 获取功能
public int length():获取字符串的长度。
public char charAt(int index):获取指定索引位置的字符
public int indexOf(int ch):返回指定字符在此字符串中第一次出现处的索引。
public int indexOf(String str):返回指定字符串在此字符串中第一次出现处的索引。
public int indexOf(int ch,int fromIndex):返回指定字符在此字符串中从指定位置后第一次出现处的索引。
public int indexOf(String str,int fromIndex):返回指定字符串在此字符串中从指定位置后第一次出现处的索引。
public String substring(int start):从指定位置开始截取字符串,默认到末尾。
public String substring(int start,int end):从指定位置开始到指定位置结束截取字符串。
* 判断功能
public boolean equals(Object obj):比较字符串的内容是否相同,区分大小写
public boolean equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写
public boolean contains(String str):判断字符串中是否包含传递进来的字符串
public boolean startsWith(String str):判断字符串是否以传递进来的字符串开头
public boolean endsWith(String str):判断字符串是否以传递进来的字符串结尾
public boolean isEmpty():判断字符串的内容是否为空。
* 转换功能
public byte[] getBytes():把字符串转换为字节数组。
public char[] toCharArray():把字符串转换为字符数组。
public static String valueOf(char[] chs):把字符数组转成字符串。
public static String valueOf(int i):把int类型的数据转成字符串。
public String toLowerCase():把字符串转成小写。
public String toUpperCase():把字符串转成大写。
public String concat(String str):把字符串拼接。
* 其他功能
public String replace(char old,char new)将指定字符进行互换
public String replace(String old,String new)将指定字符串进行互换
public String trim()去除两端空格
* 截取功能
public String substring(int start):从指定位置截取到末尾
public String substring(int start,int end):截取从指定位置开始到结束位置,包括开始位置,不包括结束位置
* 字符串中和正则表达式相关的方法:
public boolean matches(String regex):校验一个字符串是否匹配regex这个正则表达式
public String[] split(String regex):就是把一个字符串使用regex这个正则表达式进行切割
public String replaceAll(String regex,String replacement)把一个字符串中符合regex这正则表达式的字符串使用replacement这个字符串进行替换
* StringBuffer 和 StringBuilder 的区别:
** StringBuffer是线程安全的可变字符序列 , 效率低
* StringBuilder是线程不安全的可变字符序列 , 效率高. 如果单线程建议使用 StringBuilder*

0 0