String类中的常用方法

一、String类中的常用方法

1、和长度有关的方法 

返回类型 方法名 作用
int    length() 

得到一个字符串的字符个数

(一个中文是一个字符,一个英文是一个字符,一个转义字符是一个字符)

2、和数组有关的方法

返回类型    方法名                      作用  
 byte[] getBytes()  将一个字符串转换成字节数组
char[]  toCharArray() 将一个字符串转换成字符数组
String[]  split(String)  将一个字符串按照指定内容劈开

 

3、和判断有关的方法

返回类型  方法名  作用
boolean  equals(String) 判断两个字符串的内容是否一模一样
boolean equalsIgnoreCase(String)   忽略大小写的比较两个字符串的内容是否一模一样
boolean contains(String) 判断一个字符串里面是否包含指定的内容
boolean startsWith(String)   判断一个字符串是否以指定的内容开头
boolean endsWith(String)  判断一个字符串是否以指定的内容结尾

 

4、和改变内容有关的方法

和改变内容有关的方法,都不会直接操作原本的字符串 而是将符合条件的字符串返回给我们,所以注意接收。

返回类型  方法名    作用
String           toUpperCase()  将一个字符串全部转换成大写
String          toLowerCase()  将一个字符串全部转换成小写
String          replace(String,String)  将某个内容全部替换成指定内容
String          replaceAll(String,String)  将某个内容全部替换成指定内容,支持正则
String          repalceFirst(String,String)  将第一次出现的某个内容替换成指定的内容
String          substring(int)  从指定下标开始一直截取到字符串的最后
String          substring(int,int)  从下标x截取到下标y-1对应的元素
String          trim()       去除一个字符串的前后空格

 

5、和位置有关的方法

返回类型 方法名 作用
char          charAt(int)  得到指定下标位置对应的字符
int               indexOf(String)    得到指定内容第一次出现的下标
int            lastIndexOf(String) 得到指定内容最后一次出现的下标

 

6、由基本数据型态转换成String

String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 ,也就String.valueOf() 这个参数多载的方法

1、String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串

2、String.valueOf(char c) : 将 char 变量 c 转换成字符串

3、String.valueOf(char[] data) : 将 char 数组 data 转换成字符串

4、String.valueOf(char[] data, int offset, int count) : 将 char 数组 data 中 由 data[offset] 开始取 count 个元素 转换成字符串

5、String.valueOf(double d) : 将 double 变量 d 转换成字符串

6、String.valueOf(float f) : 将 float 变量 f 转换成字符串

7、String.valueOf(int i) : 将 int 变量 i 转换成字符串

8、String.valueOf(long l) : 将 long 变量 l 转换成字符串

9、String.valueOf(Object obj) : 将 obj 对象转换成 字符串, 等于 obj.toString()

7、String 转换成 数字的基本数据型态

要将 String 转换成基本数据型态转 ,大多需要使用基本数据型态的包装类别
比如说 String 转换成 byte ,可以使用 Byte.parseByte(String s) ,这一类的方法如果无法将 s 分析 则会丢出 NumberFormatException

1、byte :        Byte.parseByte(String s) : 将 s 转换成 byte

2、byte :        Byte.parseByte(String s, int radix) : 以 radix 为基底 将 s 转换为 byte ,比如说 Byte.parseByte(“11”, 16) 会得到 17

3、double :    Double.parseDouble(String s) : 将 s 转换成 double

4、float :        Float.parseFloat(String s) : 将 s 转换成 float

5、int :           Integer.parseInt(String s) : 将 s 转换成 int

6、long :       Long.parseLong(String s)

8、String与new String()的区别

JVM为了提升性能和减少内存开销,避免字符串的重复创建,维护了一块特殊的内存空间——字符串实例池。

String赋值的两种方式。

1、String str = "test";

以这种方式赋值时,JVM会先从字符串实例池中查询是否存在"test"这个对象,

如果存在,直接把实例池中"test"的地址返回给str。如果不存在,则会在实例池中创建"test"对象,并把该对象的地址返回给str。

String类中的常用方法_第1张图片

所以通过==比较是,str1,str2指向的是同一地址,所以返回true;

2、String str = new String("test");

以这种方式赋值时,JVM会先从字符串实例池中查询是否存在"test"这个对象,

若不存在则会在实例池中创建"test"对象,同时在堆中创建"test"这个对象,然后将堆中的这个对象的地址返回赋给引用str。

若实例池存在则直接在堆中创建"test"这个对象,然后将堆中的这个对象的地址返回赋给引用str。

String类中的常用方法_第2张图片

你可能感兴趣的:(java)