2013-03-25 3 views
-1

У меня есть ненулевое целое значение, которое является суммой дней недели, где дни имеют следующие значения:Расчета суммы дней в ява андроид проекта

Sunday = 1 

Monday = 2 

Tuesday = 4 

Wednesday= 8 

Thursday = 16 

Friday = 32 

Saturday = 64 

Пример: целочисленное значение 127 - Все дни недели, 65- только в воскресенье и субботу

Я видел несколько сообщений Convert integer to a list of week days относительно этого, но я не смог найти код на Java.

В зависимости от целого числа мне нужно запланировать задание на определенный день (sunday- Субботней)

+4

Каков фактический вопрос? – Howard

+1

В вашем связанном вопросе есть пример C#, который почти идентичен тому, что вам нужно в Java – antlersoft

+0

Возможный дубликат [Конвертировать целое число в список дней недели] (http://stackoverflow.com/questions/606751/ convert-integer-to-a-list-of-week-days) – antlersoft

ответ

0

вы спрашиваете, как определить, какие дни были выбраны на основе значения 127? Если да, то вы можете сказать, был ли выбран путем делать AND в данный день:

int inputValue = 127; 
if (Monday & inputValue) { 
    // Monday was selected 
} 

т.д.

Трудно быть более конкретным, не зная, на ваш вопрос.

+0

Мой вопрос зависит от целочисленного значения, мне нужно запланировать задачу. Мне нужно написать алгоритм с функцией Power (2, i) и выполнить некоторые вычисления и преобразовать это целочисленное значение в недельные дни. Пример: если целочисленное значение равно 3, то запланировано в воскресенье и понедельник, с 33 по пятницу и воскресенье, в 7 воскресенья, в понедельник и вторник. – user2208325

+0

вы можете увидеть мой вышеупомянутый вопрос, и если вы найдете какое-либо решение, было бы полезно – user2208325

+0

@ user2208325 Я верю, что ответил именно на это. Если вам нужно решить, когда что-то запланировано, скажем, в понедельник, ответ будет следующим: boolean isScheduledForMonday = Monday & inputValue; Вы уже определили свои постоянные значения понедельника, вторника и т. Д. Как полномочия двух, поэтому здесь нет необходимости вызывать математическую функцию Power (2, i). Конкретно, здесь: 3 и 1 и 3 и 2 будут истинными (1 и 2) соответственно, поэтому воскресенье и понедельник - это совпадения. Но 3 & 4, 3 & 8, ..., 3 и 64 возвращают false (0), поэтому вы знаете, что другие дни не запланированы, когда inputValue равно 3. – Lolo