如何在java中重用SimpleDateFormat类对象以获得不同的格式化答案

Ima*_*062 7 java calendar date simpledateformat

我们有一个Calendar类对象:

Calendar calendar = Calendar.getInstance();
Run Code Online (Sandbox Code Playgroud)

我们有一个SimpleDateFormat对象,格式如下:

SimpleDateFormat dateFormat = new SimpleDateFormat("dd");
String longDate = dateFormat.format(calendar.getTime());
Run Code Online (Sandbox Code Playgroud)

所以我们得到了当前的日期longDate.现在我想获得当前年份,但我想重用该dateFormat对象.有什么办法吗?我知道我最初可以格式化类,如:

SimpleDateFormat dateFormat = new SimpleDateFormat("dd-yy");
Run Code Online (Sandbox Code Playgroud)

然后从结果字符串中获取结果,但我想重用该dateFormat对象来获得年度结果.

Jon*_*eet 20

那么你可以使用applyPattern:

SimpleDateFormat dateFormat = new SimpleDateFormat("dd");
System.out.println(dateFormat.format(new Date()); // 16
dateFormat.applyPattern("dd-yy");
System.out.println(dateFormat.format(new Date()); // 16-18
Run Code Online (Sandbox Code Playgroud)

但是,我个人强烈建议您根本不使用这些类型,而不是java.time类型.我还建议不要使用2位数年份.