这个问题的措辞有点糟糕(我知道),但我不知道我要找的东西的确切名称。
我有一个 HashMap,我正在打印 HashMap 的键和值。 所需的输出是这样的:
我实际得到的是:
我当前的代码是这样的:
System.out.println("\n\nTom Hanks' co-stars are");
costarMovieMap.forEach((k, v)-> System.out.printf("\t%s\t\t\t\t\t\t\t\t in \t\t\t\t\t\t\t%s\n", k, v));
我说的太可怕了吧?
我的猜测是,为了获得所需的输出,我必须指定 %s
从某个行空间或其他位置开始。我不太确定。关于我能做什么有什么想法/建议吗?
ps:呃,有趣的是,我刚刚意识到我在屏幕截图上发现了一个错误。汤姆·汉克斯现在不能成为自己的联合主演了,对吧:)。
最佳答案
输出字符串时,可以将宽度指定为格式的一部分。这将用空格填充字符串,直到满足所需的宽度。
现在,我不打算计算空格,但它可能看起来像这样:
System.out.println("\n\nTom Hanks' co-stars are");
costarMovieMap.forEach((k, v)-> System.out.printf("\t%20s in %s\n", k, v));
附注:只要有足够的创意视频编辑,汤姆·汉克斯就可以成为自己的联合主演。
关于java - 如何获得我的程序的正确输出(字符串格式)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42706855/