Хобрук: Ваш путь к мастерству в программировании

Как найти первый четверг месяца с помощью класса Calendar в Java?

Я нашел этот метод здесь:

public Date getLastFriday( int month, int year ) {
    Calendar cal = Calendar.getInstance();
    cal.set( year, month + 1, 1 );
    cal.add( Calendar.DAY_OF_MONTH, -(cal.get( Calendar.DAY_OF_WEEK ) % 7 + 1 ));
    return cal.getTime();
} 

Я хочу подобную функциональность, как это:

private Date getFirstThursday(Date now) {
    Calendar cal = Calendar.getInstance();
    cal.setTime(now);
    cal.add(Calendar.DAY_OF_MONTH, ???);
    return cal.getTime();
}

Может кто поможет что мне заменить? Отмечен с.

11.11.2014

  • Вы обращались к этим вопросам? stackoverflow.com/questions/21265315/ stackoverflow.com/questions/23971439/ 11.11.2014
  • Мерхаба Эмек. Попробуйте библиотеку joda-time, она намного лучше подходит для таких вещей. 11.11.2014
  • Если у вас уже есть getLastFriday() реализация, то для создания getFirstThursday() вам понадобятся усилия и мысли со своей стороны, ничего больше. Похоже, вы ничего не вложили в решение своей проблемы. 11.11.2014

Ответы:


1

Попробуйте этот код:

private static Date getFirstThursday(Date now) {
  Calendar cal = Calendar.getInstance();
  cal.setTime(now);
  cal.set(Calendar.WEEK_OF_MONTH, 1);
  cal.set(Calendar.DAY_OF_WEEK, Calendar.THURSDAY);

  return cal.getTime();
}
11.11.2014
Новые материалы

Создание кнопочного меню с использованием HTML, CSS и JavaScript
Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

Внедрите OAuth в свои веб-приложения для повышения безопасности
OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

Классы в JavaScript
class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

Как свинг-трейдеры могут использовать ИИ для больших выигрышей
По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..

Как построить любой стол
Я разработчик программного обеспечения. Я люблю делать вещи и всегда любил. Для меня программирование всегда было способом создавать вещи, используя только компьютер и мое воображение...

Обзор: Машинное обучение: классификация
Только что закончил третий курс курса 4 часть специализации по машинному обучению . Как и второй курс, он был посвящен низкоуровневой работе алгоритмов машинного обучения. Что касается..

Разработка расширений Qlik Sense с qExt
Использование современных инструментов веб-разработки для разработки крутых расширений Вы когда-нибудь хотели кнопку для установки переменной в приложении Qlik Sense? Когда-нибудь просили..