繁体   English   中英

如何在不使用 StringBuilder 的情况下在 String 中添加数字

[英]How to add a number in String without using the StringBuilder

假设我有一个字符串 s = "HOWAREYOU"。 我想在每两个字母后添加数字 2,以便 s 成为“HO2AR2EY2OU2”。 我设法通过使用 StringBuilder 自己完成,但需要在不使用它的情况下完成。

public static void main(String[] args) {
    StringBuilder str = new StringBuilder("HelloHowAreYou");
    int i = 2;

    while (i <= str.length()) {
        str.insert(i, "2");
        i = i + 3;
    }

    System.out.println(str.toString());
}

尝试这个:

public static void main(String[] args) {
    String str = "HelloHowAreYou";
    int frequency = 2;
    String insertCharacter = "2";
    String newString = "";
    for (int i = 0; i < str.length(); i++) {
        if ((i + 1) % frequency == 0) {
            newString += str.substring(i, i + 1) + insertCharacter;
        } else {
            newString += str.substring(i, i + 1);
        }
    }
    System.out.println(newString);
}

这是代码:

      public static void main(String[] args)
  {

       String str = "HelloHowAreYou";

       int i = 1;
       int j = 2;

       while ( i <= str.length() )
       {
           if(i%j == 0){

               str = str.substring(0, i)+"2"+str.substring(i, str.length());
               j = j+3;
           }
           i++;
       }

       System.out.println( str );
   }

您可以使用String类提供的一些方法来完成。

String s = "HOWAREYOU";
s = String.join("2", s.split("(?<=\\G..)")); \\HO2WA2RE2YO2U

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM