如何在Java中用月份和年份显示当前月份的日期?
如何在Java中动态显示for循环中特定月份的日期、月份和年份?这简要演示了Java中的如何在Java中用月份和年份显示当前月份的日期?,java,date,Java,Date,如何在Java中动态显示for循环中特定月份的日期、月份和年份?这简要演示了Java中的SimpleDataFormat和GregorianCalendar类的一些基础知识。根据你的问题,这是我能做的最好的了 import java.text.SimpleDateFormat; import java.util.GregorianCalendar; public class Main { public static void main(String[] args) {
SimpleDataFormat
和GregorianCalendar
类的一些基础知识。根据你的问题,这是我能做的最好的了
import java.text.SimpleDateFormat;
import java.util.GregorianCalendar;
public class Main {
public static void main(String[] args) {
int year = 2012;
int month = 4;
/* The format string for how the dates will be printed. */
SimpleDateFormat format = new SimpleDateFormat("dd-MM-yyyy");
/* Create a calendar for the first of the month. */
GregorianCalendar calendar = new GregorianCalendar(year, month, 1);
/* Loop through the entire month, day by day. */
while (calendar.get(GregorianCalendar.MONTH) == month) {
String dateString = format.format(calendar.getTime());
System.out.println(dateString);
calendar.add(GregorianCalendar.DATE, 1);
}
}
}
本文简要介绍了Java中的
SimpleDataFormat
和GregorianCalendar
类的一些基础知识。根据你的问题,这是我能做的最好的了
import java.text.SimpleDateFormat;
import java.util.GregorianCalendar;
public class Main {
public static void main(String[] args) {
int year = 2012;
int month = 4;
/* The format string for how the dates will be printed. */
SimpleDateFormat format = new SimpleDateFormat("dd-MM-yyyy");
/* Create a calendar for the first of the month. */
GregorianCalendar calendar = new GregorianCalendar(year, month, 1);
/* Loop through the entire month, day by day. */
while (calendar.get(GregorianCalendar.MONTH) == month) {
String dateString = format.format(calendar.getTime());
System.out.println(dateString);
calendar.add(GregorianCalendar.DATE, 1);
}
}
}
使用java.time
另一个答案是使用麻烦的旧日期时间类,现在是遗留的,由java.time类取代
LocalDate
该类表示一个仅限日期的值,不包含一天中的时间和时区
时区
时区对于确定日期至关重要。在任何一个特定的时刻,世界各地的日期都因地区而异。例如,中午夜后几分钟是新的一天,而中仍然是“昨天”
以大陆/地区
的格式指定,例如,或太平洋/奥克兰
。切勿使用3-4个字母的缩写,如EST
或IST
,因为它们不是真正的时区,也不是标准化的,甚至不是唯一的(!)
YearMonth
我们关心整个月。所以用一个对象来表示它
YearMonth ym = YearMonth.from( today );
得到这个月的第一天
LocalDate localDate = ym.atDay( 1 );
循环,每次递增一天,直到月底。我们可以通过查看每个递增的日期是否与今天的YearMonth
相同来测试这一事实。在列表中收集每个日期
List<LocalDate> dates = new ArrayList<>( 31 ); // Collect each date. We know 31 is maximum number of days in any month, so set initial capacity.
while( YearMonth.of( localDate).equals( ym ) ) { // While in the same year-month.
dates.add( localDate ); // Collect each incremented `LocalDate`.
System.out.println( localDate );
// Set up next loop.
localDate = localDate.plusDays( 1 );
}
List dates=new ArrayList(31);//收集每个日期。我们知道31是任何月份的最大天数,所以设置初始容量。
while(YearMonth.of(localDate).equals(ym)){//while在同一年的月份。
dates.add(localDate);//收集每个递增的'localDate'。
System.out.println(localDate);
//设置下一个循环。
localDate=localDate.plusDays(1);
}
关于java.time
该框架内置于Java8及更高版本中。这些类取代了麻烦的旧日期时间类,例如,&
该项目现已启动,建议迁移到类
要了解更多信息,请参阅。并搜索堆栈溢出以获得许多示例和解释。规格是
从哪里获得java.time类
- 后来
- 内置的李>
- 标准JavaAPI的一部分,带有捆绑实现
- Java9添加了一些次要功能和修复
- 及
- 大部分java.time功能都在中向后移植到Java6和Java7
-
- 该项目专门为Android采用了ThreeTen Backport(如上所述)
- 看
该项目使用其他类扩展了java.time。这个项目是java.time将来可能添加的一个试验场。您可以在这里找到一些有用的类,例如,和。使用java.time
另一个答案是使用麻烦的旧日期时间类,现在是遗留的,由java.time类取代
LocalDate
该类表示一个仅限日期的值,不包含一天中的时间和时区
时区
时区对于确定日期至关重要。在任何一个特定的时刻,世界各地的日期都因地区而异。例如,中午夜后几分钟是新的一天,而中仍然是“昨天”
以大陆/地区
的格式指定,例如,或太平洋/奥克兰
。切勿使用3-4个字母的缩写,如EST
或IST
,因为它们不是真正的时区,也不是标准化的,甚至不是唯一的(!)
YearMonth
我们关心整个月。所以用一个对象来表示它
YearMonth ym = YearMonth.from( today );
得到这个月的第一天
LocalDate localDate = ym.atDay( 1 );
循环,每次递增一天,直到月底。我们可以通过查看每个递增的日期是否与今天的YearMonth
相同来测试这一事实。在列表中收集每个日期
List<LocalDate> dates = new ArrayList<>( 31 ); // Collect each date. We know 31 is maximum number of days in any month, so set initial capacity.
while( YearMonth.of( localDate).equals( ym ) ) { // While in the same year-month.
dates.add( localDate ); // Collect each incremented `LocalDate`.
System.out.println( localDate );
// Set up next loop.
localDate = localDate.plusDays( 1 );
}
List dates=new ArrayList(31);//收集每个日期。我们知道31是任何月份的最大天数,所以设置初始容量。
while(YearMonth.of(localDate).equals(ym)){//while在同一年的月份。
dates.add(localDate);//收集每个递增的'localDate'。
System.out.println(localDate);
//设置下一个循环。
localDate=localDate.plusDays(1);
}
关于java.time
该框架内置于Java8及更高版本中。这些类取代了麻烦的旧日期时间类,例如,&
该项目现已启动,建议迁移到类
要了解更多信息,请参阅。并搜索堆栈溢出以获得许多示例和解释。规格是
从哪里获得java.time类
- 后来
- 内置的李>
- 标准JavaAPI的一部分,带有捆绑实现
- Java9添加了一些次要功能和修复
- 及
- 大部分java.time功能都在中向后移植到Java6和Java7
-
- 该项目专门为Android采用了ThreeTen Backport(如上所述)
- 看
该项目使用其他类扩展了java.time。这个项目是java.time将来可能添加的一个试验场。你可以在这里找到一些有用的课程,如、、和。这是家庭作业吗?如果是这样的话,请给它贴上这样的标签。此外,你最好展示你迄今为止所做的尝试,并描述你遇到的具体问题,而不是简单地试图让人们分发免费代码来解决你的问题。你尝试了什么?不,我正在以不同的方式尝试。请给我一些建议。“我尝试的是…”为了更快地获得更好的帮助,请发布一篇关于你所付出的最大努力的文章,并添加一个关于如何做的具体问题