【发布时间】:2017-06-27 23:40:35
【问题描述】:
我正在尝试格式化字符串并将其写入文件。请参阅下面的代码
StringBuilder sb=new StringBuilder();
sb.insert(0, String.format("%-30s", recDataWithWarId.getRiaFirmName() != null ? recDataWithWarId.getRiaFirmName() : " "));
我想要达到的条件是(我已经掌握了下面提到的条件1):
如果
recDataWithWarId.getRiaFirmName()的长度不是 30 个字符或为 null,我想用空格填充其余空格。如果长度大于 30,我还想将
recDataWithWarId.getRiaFirmName()限制为 30,并且我希望此代码会自动执行此操作。
什么是实现这两个条件的最有效方法,而不必编写冗长的代码,一个用于子字符串,一个用于格式化?我必须在多个地方执行此操作,因为这是一个相当大的文本文件。
【问题讨论】:
-
使用子字符串编写函数。即使它更长的代码并不意味着它更慢。
-
同样注意:不要试图在一行代码中做太多事情,这不会让你看起来更聪明,而且它肯定更难阅读、维护和调试。跨度>
标签: java regex string substring