[每天一个知识点]9-Java语言-CharSequence是什么

在跟字符串相关的方法中,我们常常会看到参数类型是CharSequence,比如

boolean contains(CharSequence s)

Returns true if and only if this string contains the specified sequence of char values.

String replace(CharSequence target, CharSequence replacement)

Replaces each substring of this string that matches the literal target sequence with the specified literal replacement sequence.

之类。通常我们都把它等价于String类型,将参数使用toString()等方法转换为String再传入。实际上,CharSequence是一个接口,String、StringBuilder和StringBuffer都实现了CharSequence接口,所以以后再调用含有CharSequence类型参数的方法时,可以直接将StringBuilder或StringBuffer直接传入进去,减少一次转换。另外,有些工具类中跟字符串相关的类型,也会实现这个接口,便于减少方法调用直接传参。

你可能感兴趣的:(每天一个知识点)