2016-11-25 1 views
3

Я пытаюсь сравнить его в тот день недели, и если это выходные, выполните действие (еще не реализовано), но если я поставил сегодняшнюю дату 25/11/2016 или завтра, который является субботой 26/11/2016, он по-прежнему печатает только «WEEKDAY». Ее не работает, и я застрял:/Определите, есть ли день недели/выходные дни java

public static void calcDatePrice(String a, boolean b, double c){ 
    System.out.println("CALC PRICE METHOD: " + a); 
    Double price; 
    Date d1 = new Date(a); 

    Calendar c1 = Calendar.getInstance(); 
    c1.setTime(d1); 
    System.out.println(c1.get(Calendar.DAY_OF_WEEK)); 

    if ((c1.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) 
      || (Calendar.DAY_OF_WEEK == Calendar.SUNDAY)) { //or sunday 
    System.out.println("WEEKEND PRICE"); 
    }else { 
    System.out.println("WEEKDAY"); 
    } 
} 
+3

вы забыли 'c1.get' в вашем случае, если:' c1.get (Calendar.DAY_OF_WEEK) == Calendar.SUNDAY' не 'Calendar.DAY_OF_WEEK == Calendar.SUNDAY' –

+0

Некоторые страны имеют разные выходные. Возможно, вы нашли мой метод [реализовать локализованные выходные] (http://time4j.net/javadoc-en/net/time4j/PlainDate.html#isWeekend-java.util.Locale-) интересным. –

+0

Перед отправкой, выполните поиск переполнения стека. –

ответ

-1
if ((c1.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) || (c1.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY)) { 
    System.out.println("WEEKEND PRICE"); 
} else { 
    System.out.println("WEEKDAY"); 
} 
6

В вашем заявлении, если вы забыли c1.get в воскресенье. Должно быть так:

if (c1.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY || 
    c1.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) 

Также почему вы отправляете логические b и double c? Он никогда не использовался.

+0

для метода, который я еще не написал, я понял, что он даже не работает, но нет смысла делать вычисления –

+0

Хорошо, если это решение работает для вас. Пожалуйста, поддержите :) –

-2

вы можете использовать метод calender.DayofWeek найти какой день это

Calendar cl = Calendar.getInstance(); 
 
c1.setTime(Enter Yor Date); 
 
int day = c.get(Calendar.DAY_OF_WEEK); 
 
if(check day value is 5 or 6) 
 
    { 
 
    // Weekend Coding 
 
    } 
 
Else 
 
{ 
 
    // Weekday Coding 
 
}