java - 以对齐网格格式打印纯文本

标签 java string algorithm text javafx

我很想知道以网格布局格式或表格布局格式打印文本的方法,其中输入文本在列|行类型布局中垂直对齐 -(可以是任何语言,我感兴趣食谱)

例如,假设我有一个代表我的行的字符串数组

String[] s = new String[]{"Adele","Taylor","Katty","Beyonce","Mariah"};
String[] s1 = new String[]{"Java","Android","Ruby","Pascal","Python"};
String[] s2 = new String[]{"Ronaldo","Ibrahimovic","Tevez","Rooney","Ronaldhino"};
String[] s3 = new String[]{"Stackoverflow","Facebook","Twitter","Amazon","Scrybasms"};

我想以这样的表格格式将其打印到控制台/文本文件/等

Adele                  Taylor               Katty                        Beyonce                                Mariah 
Java                   Android              Ruby                         Pascal                                 Python 
Ronaldo                Ibrahimovic          Tevez                        Rooney                                 Ronaldhino
Stackoverflow          Facebook             Twitter                      Amazon                                 Scrybasms                                      

但是你可以看到它们没有正确对齐;在 GUI 应用程序上,这就是它的样子 enter image description here

以及我的 eclipse

enter image description here

它们都有不同的对齐方式,我不知道为什么,因此我想要一种更好的方法来实现我想要的。谢谢

编辑

谢谢大家,评论者和回答者,我已经用出现最多的单词“MonoSpace”解决了这个问题。 :)

enter image description here

最佳答案

eclipse中,它是等宽字体,如下所示:

aaaa bbbb cccc dddd
eeee ffff gggg hhhh
iiii jjjj kkkk llll

在您的应用程序中,它不是等宽字体,如下所示:

aaaa bbbb cccc

dddd eeee ffff

gggg hhhh iiii

jjjj kkkk llll

现在您明白为什么它在 Eclipse 中正确对齐但在应用程序中失败了。

关于java - 以对齐网格格式打印纯文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34277754/

相关文章:

java - 在Java中使用 "=="

C - 文件管理,无法获得想要的输出

c - C中指针复制的问题

仅用一个整数表示一组整数的算法

algorithm - Viola Jones/AdaBoost 的学习阶段

java - Mojo 的 AspectJ Maven 插件可以与 jdk 9+ 一起使用吗?

java - php中执行java时如何修复编码

java - 在 Selenium 中,使用 CTRL + Shift + N 以隐身模式启动浏览器在 Sauce Labs 中不起作用

c++ - 为什么在相同时间复杂度下,一种算法比另一种算法快?

java - Maven 站点迁移 - 如何处理?