我在这里要做的是基于int的值创建一个字符串。

我知道我能够通过length()方法基于字符串创建一个in的标签,但我想知道如何做相反的事情。

例如,我有一个30的整数,我想基于该整数在一行中创建30个点并将其放置在println中

 {


     while (wordlegnth1 + wordlegnth2 < LINELENGTH)

     {

         dots++;
         wordlegnth1++;

     }

     System.out.println (word1 + dots + word2);
   }


此刻,println所做的是打印输入的2个单词,基于输入的2个单词的int值,例如stack24overflow

基本上我想做的是将24从一个int更改为24个点(........................)

非常感谢 :)

最佳答案

这是想要多次repeat a string(或一个字符)的特殊情况。

但是,有一个简单的解决方案,就是循环输出周期dots次数并将其直接打印到屏幕上:

System.out.print(word1);
for(int d = 0; d < dots; d++){
    System.out.print(".");
}
System.out.println(word2);


或者,您可以先形成一个字符串(使用StringBuilder),然后将其输出:

StringBuilder sb = new StringBuilder(dots);
for(int d = 0; d < dots; d++){
    sb.append('.');
}
System.out.println(word1 + sb + word2);


请注意,StringBuilder的容量已初始化为dots

10-06 03:18