![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Дрон |
|
||||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 6 Всего: 92 |
Волею судеб пишу программку, в которой надо нарисовать календарь на текущий месяц.
Для того, чтобы начать его рисовать надо найти понедельник в той неделе, в которой начинается месяц (этот понедельник чаще всего в предыдущем месяце). Делаю я, казалось бы, очевидную вещь:
Но это работает не правильно: в результате получается понедельник текущей недели. Причём меня поначалу ввело в ступор то, что при пошаговом выполнении с проверкой результатов получались верные значения, а при нормальном -- нет. Удивляюсь. Прибегаю к малоизвестному в народе способу под названием RTFM ![]()
Это многое объясняет. Если между двумя set вставить, например, startDate.getTimeInMillis(), то всё вычисляется как и задумано: сначала переход на первое число, потом переход на понедельник той недели. Другое дело, что так делать мне совсем не хочется и весь мой опыт протестует, считая это если не грязным хаком, то уж костылём точно. Только при этом я не могу понять, а как же сделать правильно? Это сообщение отредактировал(а) Дрон - 9.9.2011, 21:56 -------------------- Да. Именно так. |
||||
|
|||||
LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Там фишка в том, что установка "младших" полей может менять старшие. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 6 Всего: 92 |
Не совсем, но кое что понял. Надо мне посмотреть, как там Calendar (точнее GregorianCalendar ![]() Но судя по твоему примеру я на верном пути -- реально задача у меня более общая, чем я описал, мне просто нужно было понять как правильно работать с этим классом. -------------------- Да. Именно так. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |