Maguz Asked: 2020-12-16 09:57:49 +0800 CST 2020-12-16 09:57:49 +0800 CST 2020-12-16 09:57:49 +0800 CST 'getMonth()' 已弃用 772 我得到当前月份如下: int mesActual = new Date().getMonth() +1; //enero=0 diciembre=11 但是这种方法已被弃用。我该如何更换它? java 3 Answers Voted Best Answer Ajeno 2020-12-16T10:12:37+08:002020-12-16T10:12:37+08:00 @Rene Limon 的答案是解决方案,您可以省略日期以减少不必要的代码行,如下所示: Calendar cal = Calendar.getInstance(); int mesActual = cal.get(Calendar.MONTH) + 1; Rene Limon 2020-12-16T10:01:03+08:002020-12-16T10:01:03+08:00 因此: java.util.Date date= new Date(); Calendar cal = Calendar.getInstance(); cal.setTime(date); int mesActual = cal.get(Calendar.MONTH)+1; Jorgesys 2020-12-16T10:28:00+08:002020-12-16T10:28:00+08:00 您必须从 Calendar 实例中获取日、月或年: //int mesActual = new Date().getMonth() +1;//enero=0 diciembre=11 Calendar calendar = Calendar.getInstance(); int diaActual = calendar.get(Calendar.DAY_OF_WEEK); int mesActual = calendar.get(Calendar.MONTH) + 1; int anioActual = calendar.get(Calendar.YEAR); 需要注意的是,要获得月份必须加1,因为第一个月是0,因此以这种方式获得: int mesActual = calendar.get(Calendar.MONTH) + 1; MONTH:get 和 set 的字段编号,表示月份。这是特定于日历的值。公历和儒略历中的第一个月是 JANUARY,即 0;后者取决于一年中的月数。
@Rene Limon 的答案是解决方案,您可以省略日期以减少不必要的代码行,如下所示:
因此:
您必须从 Calendar 实例中获取日、月或年:
需要注意的是,要获得月份必须加1,因为第一个月是0,因此以这种方式获得: