JAVA字符串如何像数组一样取字符?

最近总是把字符串的操作混淆,以为一个字符串直接像数组一样操作就可以得到其中的字符。

Sring s1 = "abcde";

那么 s1[0] = 'a'   ?    这是错误的。

String类内部的value是一个字符数组

private final char value[]; 

可以看到是private的,而String类没有提供直接访问与操作这个数组的方法

应该用  char ch1 = s1.charAt(0);

这样才有  ch1 = 'a';

 

另外 要知道一个字符是否存在于某字符串中,只要用indexOf()就可以。

int indexOf(a):返回的是ch在字符串中第一次出现的位置。

int indexOf(int ch,int fromIndex):从fromIndex指定位置开始,获取ch在字符串中出现的位置。

String s1 = "abcde";

s1.indexOf('a')          //  结果 = 0  返回a在字符串中的位置

s1.indexOf("bc")     //结果=1  返回字符串bc在父字符串中的位置 

s1.indexOf('f')  // 结果= -1 如果不存在 返回-1

charAt(int index): 取指定索引位置上的字符

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值