JAVA基础 String相关API

2 篇文章 0 订阅

JAVA基础 String相关API

String是我们在学习和使用中,比较常用到的类,同时他也有着很多方法,使得我们在用的时候更加的省事方便。和String相关的StringBuilder和StringBuffer类,我们今天也一样看下。同样,关于具体的方法的使用需要看下API,这边稍微写下相关方法有个印象就可以的。

String

String是不可变长的字符序列,我们平常用到的 双引号的内容 都是String的实例。

构造器

byte[] getBytes() 使用平台的默认字符集将此 String编码为字节序列,将结果存储到新的字节数组中。

String(byte[] bytes, String charsetName) 使用指定的字符编码格式转为字符串

String(char[] value) 分配新的 String ,使其表示当前包含在字符数组参数中的字符序列。因为String的代码可以是多个字符拼接而成,因此String的构造器中可以用字符。

 char[] arr = {'a','b','c'};
 String str = new String(arr);
 System.out.println(str);//abc

常用方法

charAt(int index)

**返回指定索引处的 char值。**根据索引可以返回字符串索引处字符。

codePointAt(int index) 返回指定索引处的字符的Unicode代码点,相较于直接返回字符不是很直观,但可以通过类型转换来获得字符。

compareTo equals

按字典顺序比较两个字符串,比较基于字符串中每个字符的Unicode值。如果参数字符串等于此字符串,则值0 ; 如果此字符串按字典顺序小于字符串参数,则小于0 ; 如果此字符串按字典顺序大于字符串参数,则值大于0 。

compareToIgnoreCase 忽略大小写差异,比较两个字符串。

equals 比较两个字符串是否相等

concat

将指定的字符串连接到此字符串的末尾,不修改原来的字符串。和 str1+str2 类似。

contains

是否包含指定字符串。返回Boolean类型。

endsWith startsWith

测试此字符串是否以指定的 后缀|前缀 结尾。后面可以跟索引,是从哪一个索引开始计算。

void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)

将此字符串中的字符复制到目标字符数组中

srcBegin - 要复制的字符串中第一个字符的索引。
srcEnd - 要复制的字符串中的最后一个字符后面的索引。
dst - 目标阵列。
dstBegin - 目标阵列中的起始偏移量。

public static void main(String[] args) {
        String str ="abcdefg";
        char[] arr = new char[10];
        str.getChars(3,5,arr,2);
        System.out.println(Arrays.toString(arr));//[ ,  , d, e,  ,  ,  ,  ,  ,  ]


    }
indexOf

返回指定子字符串第一次出现的字符串中的索引。

后面可以跟索引,查找从索引后开始第一次出现的索引。

lastIndexOf 返回指定子字符串最后一次出现的字符串中的索引

length() 返回此字符串的长度。
repeat, replace, replaceFirst

repeat(int count) 返回一个字符串,其值为此字符串的串联重复 count次。

replace(char oldChar, char newChar) oldChar在此字符串 newChar

replaceFirst 只替换第一个符合的子串

System.out.println(str2.replaceFirst("o","O"));
valueOf ,strip(),stripLeading(),stripTrailing()

valueOf 内容转为字符串。静态方法

strip 返回一个字符串,其值为此字符串,并删除了所有前导和尾随 white space 。

String stripLeading() 返回一个字符串,其值为此字符串,并删除了所有前导 white space 。
String stripTrailing() 返回一个字符串,其值为此字符串,并删除所有尾随 white space 。

toLowerCase() toUpperCase()

使用默认语言环境的规则将此 String所有字符转换为小写|大写。

toCharArray()

将此字符串转换为新的字符数组

split

根据指定分隔符分隔该字符串,返回分隔后的字符串数组

String s = "name=zhangsan&pwd=123";
System.out.println(Arrays.toString(s.split("&")));
substring (int beginIndex, int endIndex)

截取从索引开始到索引结束的字符串

StringBuilder StringBuffer

StringBuilder :可变长字符序列,线程不安全的
StringBuffer :可变长字符序列,线程安全的

执行效率问题: StringBuilder>StringBuffer>String

StringBuilder 和StringBuffer的方法是差不多的,初始容量为16个字符。下面简单看下这些方法

常用方法

转化为字符串

转为字符串 1) toString 2)new String(StringBuffer|StringBuilder)

append

将参数的字符串表示形式追加到序列中。

charAt ,compareTo,getChars,indexOf,length

和String的用法差别不大,可以参考String的用法,或者是详细看下API

subString,replace

和String的用法差别不大,可以参考String的用法,或者是详细看下API

delete, deleteCharAt

delete(int start, int end) 删除此序列的子字符串中的字符。

deleteCharAt(int index) 按此顺序删除指定位置的 char 。

insert

将 参数的字符串表示形式插入此序列中。

offsetByCodePoints(int index, int codePointOffset)

offsetByCodePoints返回此序列中的索引,该索引从给定的index偏移codePointOffset代码点。

index - 要偏移的索引
codePointOffset - 代码点中的偏移量

reverse

逆序翻转,会改变原数组。

其他

用“ ” +其他的数据,可以将其变为String类型的数据。

String可以通过构造器转为StringBuilder。也可以通过先创建StringBuilder的对象,然后用append方法转换。StringBuffer也是同理

StringBuilder转为String可以通过构造器,也可以通过toString方法转换。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值