【问题标题】:Making a String containing the same character multiple times [duplicate]多次制作包含相同字符的字符串[重复]
【发布时间】:2014-02-06 10:41:15
【问题描述】:

如何在 Java 中初始化具有动态长度的字符串?

例如,我想要一个由n 个字符a 组成的字符串,其中n 是一个变量。我可以这样做吗?

【问题讨论】:

标签: java string


【解决方案1】:

您可以使用 StringBuilder 并定义一个名为例如的方法。获取字符串。

public static String getString(char ch, int n){ 
        StringBuilder sb = new StringBuilder(n);
        for (int i=0; i<n; i++){
           sb.append(ch);
        }
        String s = sb.toString();
        return s;
}

现在你可以调用这个方法了。

String sA1 = getString('a', 10);
String sA2 = getString('a', 20);
String sB = getString('b', 30);
String sC = getString('c', 5);  

【讨论】:

    【解决方案2】:

    你可以使用 StringBuilder

    StringBuilder sb = new StringBuilder();
    String myChar = "a";
    int n = 10;
    for(int i=0; i<n;i++){
       sb.append(myChar);
    }
    
    String myResult = sb.toString();
    

    【讨论】:

      【解决方案3】:

      Java 中的数组具有固定长度。如果希望大小是动态的,则需要使用 List 对象

      List<String> stringList = new ArrayList<String>();
      

      查看ArrayList 文档。

      如果你需要数组,那么

      String[] stringArray = stringList .toArray(new String[stringList .size()]);
      

      【讨论】:

        【解决方案4】:

        字符串是不可变的。当您初始化一个字符串时,它是一次。你不能不时改变它的大小。大小不应该是动态的。

        使用 StringBuilder 等其他选项来执行此操作

        【讨论】:

          【解决方案5】:
          StringBuilder strB = new StringBuilder();
          for(int i = 0; i < size; i++)
          {
            strB.append("a");
          }
          
          String str = strB.toString();
          

          【讨论】:

            【解决方案6】:

            您可以使用List

            ArrayList<String> mylist = new ArrayList<String>();
            mylist.add(mystring); //this adds an element to the list.
            

            【讨论】:

              猜你喜欢
              • 2023-03-13
              • 1970-01-01
              • 2012-12-06
              • 2019-09-22
              • 2015-05-20
              • 1970-01-01
              • 1970-01-01
              • 2013-05-23
              • 1970-01-01
              相关资源
              最近更新 更多