どのように私は簡単かつきれいにも並んでいるtoStringメソッドを使用して複数のオブジェクトを、印刷していますか?

malthe.w:

私はメンバーのArrayListに、端末にプリントアウト時にtoStringメソッドで呼び出された氏名、年齢、生年月日など、自分自身の情報、とそれぞれを持っています。

ここで、コードは次のとおりです。

@Override
    public String toString() {
        return "|ID: " + id + "| Name: " + name + "| Age: " + 
              calculateAge(age, LocalDate.now()) + "| Tlf.: " + tlfNo + "| Active: " + 
              activeMember + "| Next payment: " + nextPayment + "|";
    }

そして、ここでの出力です:

|ID: 12| Name: Casper| Age: 49| Tlf.: 12345678| Active: true| Next payment: 2018-02-12|
|ID: 13| Name: Allan| Age: 69| Tlf.: 12345678| Active: true| Next payment: 2018-01-12|
|ID: 16| Name: Christina| Age: 100| Tlf.: 12345678| Active: false| Next payment: 2018-02-04|
|ID: 19| Name: RICK| Age: 49| Tlf.: 12345678| Active: false| Next payment: 2018-04-14|

どのように私は、互いの上に整列するためにさまざまな情報を得るのですか?

Veselin Davidov:

あなたのような何かを行うことができます:

 public String toString() {
        return String.format("|id: %10d |Name: %30s| Age: %02d | Tlf.: %d| Active: %s| Next Payment: %s |", id, getNameTrimmed() , age , tlfNo ,    activeMember, nextPayment );
 }

 private  String getNameTrimmed(){
    if(name.length()>30) {
        return name.substring(0,27)+"...";
    }
    return name;
}

IDが10個の文字を持っています。この方法で、あなたがあなたの30文字の名前を付ける方法を追加する必要があるので、名前は30になります(あなたが長いのIDを持っている場合、それはまだフォーマットが解除されます)

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=207945&siteId=1