java - 以下字符串程序输出不正确

标签 java string

public class NoOfConsAlphabet {

public static void main(String[] args) {

    String str="aaabbddaabbcc";
    int count=1;
    String finalString="";
    for(int i=1;i<str.length()-1;i++)
        {
            if(str.charAt(i)==str.charAt(i+1))
            {
                ++count;

            }
            else
            {

                finalString+=str.charAt(i)+count+",";
                count=1;
            }   

        }
    System.out.println(finalString);
    }
}

我得到这个作为我的 o/p:99,100,102,99,100,有人能告诉我如何解决这个问题不知道这是什么吗?需要得到 a3,b2,d2,a2,b2,

最佳答案

您基本上添加:

char + int + String

因为 + 是左关联的,你最终会做:

(char + int) + String

因此 int + String;并且只有在那一步才会发生字符串连接。

一个解决方案是使用 String.format():

String.format("%c%d,", str.charAt(i), count);

关于java - 以下字符串程序输出不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22785878/

相关文章:

java - 无法使用 acrofields 为 Ms Word 中的表单设置字段值

java - 检查 Textarea 字段是否为空。如果是这样,请不要发表评论

c - 使用 strtok() 从字符串中解析标记

ios - 文字 : "\b" 中的转义序列无效

java - 在 Java 中删除前导零

java - 是否有适用于 Google Android 的表单设计器

java - JAX-RS 是否适合作为 MVC 框架?

java - 使用 Void* 参数将套接字数据传递给 JNA 函数

Python:将逻辑字符串解析为列表列表

string - 删除模式之后的所有内容,包括模式