【问题标题】:Replacing text in stringbuffer without hardcoding indexes在没有硬编码索引的情况下替换字符串缓冲区中的文本
【发布时间】:2014-05-26 01:46:19
【问题描述】:

我有一个 Stringbuffer 对象,其中包含数据“Detail is:

基于 HashMap(Map) 的结果,我在循环遍历地图和获取数据的帮助下填充此行下方的详细信息。

现在我想将文本“Detail is:”替换为“Details are:”,如果获取了多条记录。

他们有什么方法可以做到这一点吗?

谢谢

【问题讨论】:

    标签: string replace stringbuffer


    【解决方案1】:

    你可以:

    1. 从字符串缓冲区中取出字符串。
    2. 重置字符串缓冲区并写入新的开始。
    3. 将替换后的前缀全部写回缓冲区。

    相反,您也可以这样做:

    1. 首先省略前缀
    2. 在最后做一个简单的字符串连接。

    【讨论】:

      【解决方案2】:

      如果地图大小大于 1,你甚至可以这样做

      StringBuffer sb=new StringBuffer();
      if(map.size>1){
          sb.append("Details are:")
      }else{
          sb.append("Details is:");
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-08-10
        • 2015-02-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-10-27
        • 1970-01-01
        相关资源
        最近更新 更多