String类中的常用方法

一、String类中的常用方法

1、和长度有关的方法 

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

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

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

2、和数组有关的方法

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

 

3、和判断有关的方法

返回类型 方法名 作用
boolean equals(String)判断两个字符串的内容是否一模一样
booleanequalsIgnoreCase(String)  忽略大小写的比较两个字符串的内容是否一模一样
booleancontains(String)判断一个字符串里面是否包含指定的内容
booleanstartsWith(String)  判断一个字符串是否以指定的内容开头
booleanendsWith(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。

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

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

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

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

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

  • 14
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值