java - 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;
}
解决方案
作为替代方案,我会用它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 日
推荐阅读
- c# - 使用 dll 为 c# .net core 3.0 项目创建安装程序/exe
- javascript - 使用 babel 7 忽略函数外的返回
- google-apps-script - 如何设置脚本以指定背景颜色自动将行从工作表 1 复制到工作表 2
- node.js - 带有自定义路径或命名空间的问题 Socket.IO
- php - 按下按钮后如何更新数据库的值?
- c# - 在 C# 中调用具有 URL 中的 ID 的 API 时出现 500 错误
- go - 搜索具有大量元素的切片
- r - 用连续值替换 R 中的空单元格(R,循环)
- javascript - 如何将此字符串转换为数组?
- ios - 如何使用 swift 在 CoreData 中添加元素