【发布时间】:2018-09-27 10:54:46
【问题描述】:
我是 java 新手,我编写了一个代码来打印一定范围之间的闰年,对于输出,我想每行打印 3 个闰年,每一年用逗号分隔。
例如,1999年到2045年之间,我想要的输出是:
2000,2004,2008
2012,2016,2020
2024,2028,2032
2036,2040,2044
我已经写好了代码:
for (int year = 1999; year<2045; year ++) {
if (((year%4 == 0) && (year%100 !=0)) || (year%400==0)) {
System.out.println(String.format(format, year)); #issue here
}
}
我对字符串格式如何通过我计划在打印时使用的 String.format 表示法工作感到困惑。希望能得到一些帮助。
【问题讨论】:
-
在当前设计下一次只能打印一年,因此在添加大量丑陋的代码(例如计数器)之前,无法打印以逗号分隔的 3 年达到 3 / 迭代结束。另外在旁注中,将
String.format包装在System.out.print...中是没有意义的,而您可以只使用System.out.printf。 -
这可能有助于您了解
format的工作原理 - docs.oracle.com/javase/tutorial/java/data/numberformat.html -
我不认为 String.format() 是这样做的好人选。要么你在错误的地方使用它,要么你不理解你的作业问题:P