Передать значение ключа в массив

289
19 января 2017, 03:19

Доброе утро. Пишу функцию календаря, где есть 2 аргумента месяц и год. Функция возвращает 2мерный массив и строит календарь на определенный год. Сравниваю localDate с ключем, если совпадает возвращаю значение. Как мне его передать что бы строился правильно мой календарь?

package lang;
import java.io.IOException;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class GetFunWithJavaLang {
public static int[][] Cal(int month, int year) throws IOException
{
    LocalDate localDate = LocalDate.of(year, month, 1);
    System.out.println(localDate.getDayOfWeek());
    HashMap<String , Integer> map = new HashMap<String , Integer>();
    map.put("SUNDAY", 7); 
    map.put("MONDAY", 1); 
    map.put("TUESDAY", 2); 
    map.put("WEDNESDAY", 3); 
    map.put("THURSDAY", 4); 
    map.put("FRIDAY", 5); 
    map.put("SATURDAY", 6); 
    for(Entry entry: map.entrySet()) {
          String key = (String) entry.getKey();
          if (key.equals(localDate))
          {
              int value = (int) entry.getValue();    
          }  
        }
    int[] days = {31,28,31,30,31,30,31,31,30,31,30,31}; 
    int[][] calen = new int[6][7]; 
    int k=0;
    for (int i = 0 ; i<calen.length ; i++)
    {
        for (int j=0 ; j<calen.length ; j++)
        {   
            if (days[month-1] > k)
            {
            k++;
            calen[i][j] = k;
            }       
        }
    }
    for (int i = 0; i < calen.length; i++, System.out.println("  ")) {
        for (int j = 0; j < calen[i].length; j++) {
            System.out.print(calen[i][j] + " ");
        }
    }
    return calen;   
}
public static void main(String[] args) 
{   
    Cal(1, 1998);   
}   
}
Answer 1

Если я правильно понял, то вы хотите получить день недели для указанной даты. А именно для начала месяца. Это делается очень просто, если использовать новый API для дат:

LocalDate localDate = LocalDate.of(1998, 1, 1);
System.out.println(localDate.getDayOfWeek());

Вывод будет таким:

THURSDAY

READ ALSO
Как получить все View из ViewGroup?

Как получить все View из ViewGroup?

ЗдравствуйтеПросьба помочь с написанием первого виджета

334
Android. Не спрашивать чем читать NFC метку, если программа уже запущена

Android. Не спрашивать чем читать NFC метку, если программа уже запущена

Доброго времени сутокПишу программу для чтения и записи данных через NFC

314
Как получить IP-адрес по id сессии?

Как получить IP-адрес по id сессии?

Есть пользователи, которые логинятся для входа в приложениеПри этом создается сессия

336