java - 将点添加到 system.out.println 中

标签 java while-loop

基本上我有一条线的结尾是 40, 如果添加 2 个单词,每个单词长 10 个字母,那么我就剩下 20 个空格 20 个空格应该填满点……例如 你好......................你

堆栈......................溢出

现在我的代码工作正常,我只是不知道如何在 system.out.println 中满足这一点,以便将结果打印到控制台。

在测试了输入干扰词后应该有多少个点之后,我正在考虑使用 whileloop 一次打印一个点。

目前我的这个显然不起作用

{
       System.out.println (word1 + ".." + word2);

       while (wordlegnth1 + wordlegnth2 < LINELENGTH)

       {
           System.out.println (word1 + "." + word2);

           wordlegnth1++;

       }

最佳答案

final int LINE_LENGTH = 40;

String word1 = ...;
String word2 = ...;

StringBuilder sb = new StringBuilder(LINE_LENGTH);
sb.append(word1);
for (int i = 0; i + word1.length() + word2.length() < LINE_LENGTH; i++) {
    sb.append(".");
}
sb.append(word2);

System.out.println(sb.toString());

注意:使用 StringBuilder 是为了避免由于 String 不可变性而造成的性能损失

关于java - 将点添加到 system.out.println 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4138609/

相关文章:

Java 泛型 方法声明中的 2 组 <K,V> 或 <T>

java - 检测不匹配的字符串

java - 如何停止正在进行的 java.sql.statement.executeQuery()?

java - Spring数据延迟加载不起作用

c++ - 计数器函数不建立在先前返回的值之上

java - 有没有办法使用 for 循环确定要在页面上绘制的确切行数?

java - 不能@Autowired接口(interface)

java - 第一次迭代后的 while 循环不更新数组值

c++ - Qt 多个异步 While 循环和 qApp->processEvents();

java - DO.. WHILE.. 使用 SWITCH 菜单