You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将char转换为CharSequence?charAt()取字符后用contains()搜索的实现

解决char转CharSequence的几种实用方法

嘿,这个场景我太熟悉了——用charAt()拿到单个char后,想丢给contains()却发现参数类型不匹配对吧?别担心,有好几种简单的方式能搞定这个转换,核心逻辑就是String和CharBuffer本身就是CharSequence的实现类,直接把char转换成这两种类型就行:

  • 方法一:用String.valueOf()转换(最常用)
    这是最简洁直观的方式,直接把char包装成String,完美适配contains()的参数要求:

    // 假设你已经从原字符串拿到了目标char
    char targetChar = originalString.charAt(3);
    // 转换后直接传入contains()
    boolean isContained = anotherString.contains(String.valueOf(targetChar));
    
  • 方法二:用Character.toString()转换
    和上面的方法效果完全一致,只是调用的是Character类的静态方法,写法上稍有不同:

    char targetChar = originalString.charAt(3);
    boolean isContained = anotherString.contains(Character.toString(targetChar));
    
  • 方法三:用CharBuffer.wrap()包装
    如果想更“原生”地处理字符序列,可以用CharBuffer来包装单个char的数组,CharBuffer同样实现了CharSequence接口:

    char targetChar = originalString.charAt(3);
    CharSequence charSeq = CharBuffer.wrap(new char[]{targetChar});
    boolean isContained = anotherString.contains(charSeq);
    

个人推荐前两种方法,代码更简洁易懂,日常开发里用得最多。

内容的提问来源于stack exchange,提问作者Shitab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 07:25:36