Я пытаюсь создать некоторый код на Java, где кто-то может определить дату следующего повторяющегося времени указанной недели. Это сложно объяснить, поэтому я приведу пример. Скажем, это 1 марта (четверг), и пользователь хочет знать, когда в следующую субботу 5:00 код должен вывести 3 марта, 5:00 в качестве переменной Date, а если это 4 марта, программа должна вывести 10 марта. и так далее ...
Пользователь, однако, может указать, какое время недели он хочет. Это делается с помощью длинного значения, которое смещает время недели с четверга на 0:00 в миллисекундах. У меня проблемы с тем, чтобы обернуть голову вокруг этого, но это то, что я до сих пор получил:
public static long findNextTimeOfTheWeek(long offset)
{
return System.currentTimeMillis() - ((System.currentTimeMillis() - offset) % 604800000) + 604800000;
}
Если бы кто-нибудь мог помочь, это было бы очень признательно. И если понадобятся какие-либо дополнительные разъяснения, просто спросите. Постскриптум 604800000 - это количество миллисекунд в неделе.