Страница 1 из 1

Работа С календарем(Calendar)

Добавлено: 16 авг 2013, 10:22
Максим Янчий
Ребят, подскажите как узнать текущий день недели. Программе в зависимости от этого нужно сделать определенное действие, потому что у меня он вроде бы получает день недели, но когда я делаю Выбор(switch) он выбирает только значение 4(четверг), и его не волнует, что сейчас может быть вообще понедельник.
Calendar.getInstance();

Код: Выделить всё

 Calendar c = Calendar.getInstance();
	      c.set(year, month, day);
	      int dow = c.get(Calendar.DAY_OF_WEEK);
	      
    switch(dow){
    case 4:
	///
	break;
case 5:
///
break;
 
    }
Очень хочу знать в чем проблема. Заранее благодарен!

Re: Работа С календарем(Calendar)

Добавлено: 16 авг 2013, 11:13
Mikhail_dev
В документации написано что предыдущие значения сохраняются. Если это не требуется, то стоит вызвать перед изменением значения, метод clear.
Лично я меняю через метод setTimeInMillis значение.
И еще, из адского треша, в Calendar месяца идут с 0 значения, т.е. другими словами, декабрь = 11.

Re: Работа С календарем(Calendar)

Добавлено: 16 авг 2013, 11:30
Максим Янчий
Спасибо большое, я разобрался!

Re: Работа С календарем(Calendar)

Добавлено: 17 авг 2013, 09:28
Максим Янчий
Прошу прощения, но метод clear() нужно вызвать перед строкой c.set(year, month, day) или перед int dow = c.get(Calendar.DAY_OF_WEEK)? теперь он у меня зациклился на пятнице, а у уж думал, что проблема ушла(

Код: Выделить всё

 Calendar c = Calendar.getInstance();
		 c.clear();
	      c.set(year, month, day);
	      
	      int dow = c.get(Calendar.DAY_OF_WEEK);
	      
	        switch(dow){
	     
	        case 6:
	        ..
	        	break;
	        case 5:
	        	..
	        	break;