Java Eingabe in Array durch-iterieren

Eisbrecher99

Commodore
🎅Rätsel-Elite ’24
Registriert
Juli 2008
Beiträge
4.776
Hi,

hab hier eine kleine "newbie" Frage. Ich parse die Eingabe einer Monatszahl von string auf int. Array ist mit den 12 Monatsnamen versehen. Wie kann jetzt den passenden Monatsnamen zur eingegebenen Monatszahl direkt aus der Array-Zelle herauslesen?

Code:
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Task2_B_Birthday {

	public static void main(String[] args) {
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

		try {
			System.out.println("Bitte geben Sie die Monatszahl ein, in welchem Sie geboren sind: ");

			String s1 = in.readLine();
			int s2 = Integer.parseInt(s1);

			String monate[] = new String[] { "Januar", "Februar", "März",
					"April", "Mai", "Juni", "Juli", "August", "September",
					"Oktober", "November", "Dezember" };

			for (int i = 0; i < monate.length; i++) {
				System.out.println(monate[i] + " ist der Monatsname");
			}
			

		} catch (Exception m2) {
			System.out.println("Error");
		}

	}

}
 
Meinst du das?

System.out.println("Sie wurden im Monat '" + monate[s2-1] + "' geboren.");

// edit
hawky war schneller :(
 
Zuletzt bearbeitet: (traurig)
Code:
System.out.println(monate[s2-1] + " ist der Monatsname");
?
Oder übersehe ich etwas?

*Edit: 2l8...
 
Jep das wars tatsächlich. Funzt an sich jetzt. Nun schmeisst er mir aber z.B. bei der Eingabe 7 für Juli, 12x "Juli ist der Monatsname" aus... wie könnte man das noch unterbinden?
 
Lösche
Code:
for (int i = 0; i < monate.length; i++)
 
Code:
for (int i = 0; i < monate.length; i++) {
System.out.println(monate[i] + " ist der Monatsname");
}
Die For-Schleife entfernen...
 
Mmm ok. aber wie genau geht dass dann jetzt von statten, dass durch die Eingabe in s2 der richtige Wert im Array gefunden wird. Edit: ist klar

Edit2: Danke für die Hilfe!
 
Zuletzt bearbeitet:
Zurück
Oben