首页 > 解决方案 > Java 1.6 中使用多个整数的字符串连接技巧

问题描述

我有一个类,它有 3 个int变量,名为:日、月和年。我还有一个名为的方法toString(),它将获取三个字段并以“dd/mm/yyyy”格式返回(如果日期或月份只有 1 个数字,则无需输入 0)。

做这个的最好方式是什么?

public String toString(){
        String dateString = this.day + "/" + this.month + "/" + this.year;
        return dateString;
    }

或者

public String toString(){
        String dateString = Integer.toString(this.day) + "/" + Integer.toString(this.month) + "/" + Integer.toString(this.year);
        return dateString;
    }

标签: javaintegerconcatenationtostringjava-6

解决方案


作为替代方案,我会用它String.format来创建String

return String.format("%d/%d/%d", day, month, year)

你想用前导零格式化你的日期吗?使用格式化程序很容易:

return String.format("%02d/%02d/%02d", day, month, year)

- 0 - use leading zero instead of spaces.
- 2d - Minimum two character to print (so "2" will use " 2")

您可以找到有关Formatter中允许的标志的完整文档

一个简单的例子:

String.format("%002d", 5);

005

还有一个日期的例子,

String.format("%02d/%02d/%02d", 9, 5, 18);

2018 年 9 月 5 日


推荐阅读