Co szukam jest stworzenie tablicę dni tygodnia w języku Java, zaczynając od wczoraj i przejdź do sześciu dni czasu jako takiegoJava - Get tablicę imię dzień dla bieżącego tygodnia
String daysWeek[] = { "Yesterday", "Today", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"};
Pierwsze dwa elementy tablicy, które chcę zwrócić jako wczoraj i dziś.
Początkowo wydawało się to łatwe zadanie, używając
currentDay = Calendar.getInstance().get(Calendar.DAY_OF_WEEK);
String daysList[] = {"Sunday", "Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday"};
String daysWeek[] = {"Yesterday", "Today", daysList[currentDay], daysList[currentDay+1], ...};
Uwaga na powyższym daysList[currentDay]
powróci jutro od tablicy daysList
startów na 0 czyli jeśli currentDay = 3
który mówi dzisiaj jest wtorek to będzie to daysList[2]
.
Ale mój problem polega na tym, że jeśli currentDay wynosi 7, co oznacza, że dziś jest sobota, to currentDay+1
, który jest jutro, będzie ósmym elementem tablicy, który nie istnieje.
Czy są jakieś, które mogę w pętli wokół moich liczb, że jeśli dziś jest środa lub później, raz currentDay + x > 7
, ustaw currentDay
z powrotem na 1?
Wszystko to odbywa się w jednej metodzie, która nazywa się getDaysList(currentDay)
, która zwraca tablicę daysWeek[]
.
Odpowiedź WChargin ma rację. Chciałbym tylko wiedzieć, dlaczego chcesz to zrobić. Używanie tablic często jest oznaką złego projektowania obiektowego. Może twój kod mógłby zostać refaktoryzowany. Jeśli chciałbyś wyjaśnić swój cel przechowywania dni tygodnia w tablicy, być może moglibyśmy znaleźć lepsze rozwiązanie (lub zrozumieć, że twoje rozwiązanie jest najlepsze). – Martin