2015-06-18 6 views
-1

Я документирую код и нуждаюсь в помощи в понимании этой маленькой строки.Что делает cal.get (7) из экземпляра Calender?

private Calendar cal = Calendar.getInstance(); 
if ((this.cal.get(7) != 7) || (this.cal.get(7) == 1)) { 

Что означает cal.get(7)? Я запустил его на IDE, и это дало мне результат 5. Я попробовал cal.get(6) и получил результат 169.

+1

Необходимо предоставить дополнительную информацию. Например: объявление переменной «cal». Также «Я сделал 6, и это дает мне 169». Что это за «6», о котором вы говорите? –

ответ

3

Если «cal» - это java.util.Calendar, тогда 7 будет DAY_OF_WEEK. Однако вы не должны передавать литералы в метод .get(); вместо этого используйте константы в классе Calendar. Так, например, это эквивалентно вашему примеру:

if ((this.cal.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY) || (this.cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY)) { 

(DAY_OF_YEAR имеет значение 6, кстати)

Класс Календарь имеет большое количество констант, которые можно использовать; см. javadoc для получения дополнительной информации.

+0

Я использовал декомпилятор, возможно, поэтому он показывал эти цифры. У вас нет исходного кода. СПАСИБО, кстати !!! : D – Adnan

0
/** 
    * Field number for <code>get</code> and <code>set</code> indicating the day 
    * of the week. This field takes values <code>SUNDAY</code>, 
    * <code>MONDAY</code>, <code>TUESDAY</code>, <code>WEDNESDAY</code>, 
    * <code>THURSDAY</code>, <code>FRIDAY</code>, and <code>SATURDAY</code>. 
    * 
    * @see #SUNDAY 
    * @see #MONDAY 
    * @see #TUESDAY 
    * @see #WEDNESDAY 
    * @see #THURSDAY 
    * @see #FRIDAY 
    * @see #SATURDAY 
    */ 
    public final static int DAY_OF_WEEK = 7;