Задача

Как получить номер недели или месяц в году, и номер недели в месяце в Java?

Решение

В следующем примере отображается номер недели года и месяца, и номер месяца в году.

import java.util.*;

public class Main {
   public static void main(String[] args) throws Exception {
      Date d1 = new Date();
      Calendar cl = Calendar. getInstance();
      cl.setTime(d1);
      
      System.out.println("сегодня " + cl.WEEK_OF_YEAR+ " неделя года");
      System.out.println("сегодня "+cl.DAY_OF_MONTH + " месяц года");
      System.out.println("сегодня "+cl.WEEK_OF_MONTH +" неделя месяца");
   }
}

Результат

Вышеприведенный пример кода даст следующий результат:

сегодня 30 неделя года
сегодня 5 месяц года
сегодня 4 неделя месяца

Ниже приведен еще один пример отображения недели года, месяца.

import java.util.Calendar;
 
public class GetWeekOfMonthAndYear {
   public static void main(String[] args) {
      Calendar cal = Calendar.getInstance();
      System.out.println("Текущая неделя месяца: " +cal.get(Calendar.WEEK_OF_MONTH));
      System.out.println("Текущая неделя года: " +cal.get(Calendar.WEEK_OF_YEAR));
      cal.add(Calendar.WEEK_OF_MONTH, 1);
      System.out.println(
         "дата через год: " + (cal.get(Calendar.MONTH) + 1)+ "-"+ cal.get(Calendar.DATE)+ "-"+ cal.get(Calendar.YEAR)); 
   }
}

Результат

Вышеприведенный пример кода даст следующий результат:

Текущая неделя месяца: 2
Текущая неделя года: 46
дата через год: 11-18-2016

Оглавление