- 已关闭。**此问题需要debugging details。当前不接受答案。
编辑问题以包含desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将有助于其他人回答问题。
17小时前关门了。
Improve this question
我在写代码的时候遇到了一个问题,我的代码在输出前打印了一个新行,我想避免这种情况。
下面是我的代码
if (movieName.length() > 44)
{
movieName = movieName.substring(0, 44);
}
if(frqName.equals(movieName) && frqRating.equals(movieRating))
{
System.out.print(" " + movieTime);
}
else
{
System.out.println();
System.out.printf("%-44s | %5s | %s", movieName, movieRating, movieTime);
}
frqName = movieName;
frqRating = movieRating;
}
}
}
下面是我的输出--首先是不希望看到的空行:
Wonders of the World | G | 16:40 20:00
Journey to Space | PG-13 | 19:00
Buffalo Bill And The Indians or Sitting Bull | PG | 12:45 15:00 19:30
Adventure of Lewis and Clark | PG-13 | 10:00 14:30
Halloween | R | 19:00
我认为问题出在第一个print语句上;但我该怎么修呢
我已经尝试过从else
部分删除System.out.println();
,并在下一行的格式字符串中添加一个换行符,但是同一个动作的后续显示时间会打印在下一行,这更糟糕。
1条答案
按热度按时间3wabscal1#
只写:
...并且您的输出不会以空行开头。
我还将(尽管我不知道您的意图)在新的
System.out.println()
中删除movieTime
之前的" " +