Ich studiere Java mit Hilfe von Online-Aufgaben und habe mich mit Methoden beschäftigt. Das Ziel ist, ein Programm zu schreiben, das eine Methode verwendet, die ein Jahr, einen Monat, einen Tag und ein ausgedrucktes Formular als Parameter hat. Dann druckt das Programm das gesamte Datum mit dem gewählten Format. Mit den Formaten, meine ich so etwas, normal: 10. Juli 2016/kürzen: 10.07.2016/amtlich: 10-07-16Java: Erhalte einen gewünschten Ausdruck/Ausgabe von meiner eigenen Methode
Mein Problem ist mir nicht ganz sicher wie ich das machen soll, aber so Bisher habe ich es so weit gebracht Ich habe versucht, String-Arrays für das normale Format zu verwenden, aber es scheint nicht zu funktionieren.
EDIT: Ich habe es irgendwie als intented zu arbeiten, aber es hat noch einige kleinere Probleme wie das letzte userinput alos am Ende gedruckt wird und ich nicht scheinen thrid Format (offical) recht arbeiten zu erhalten, wie intented weil es nicht die 0s vor den Werten unter 10 druckt.
Tut mir leid, wenn es nicht einfach zu verstehen ist, was ich versuche zu sagen, Englisch ist nicht meine Muttersprache.
Danke
public static int returnCorrectFormat(int year, int month, int day, int format) {
switch(format)
{
case 1:
switch (month)
{
case 1: System.out.println(day +"." + " January " + year);
break;
case 2: System.out.println(day +"." + " February " + year);
break;
case 3: System.out.println(day +"." + " March " + year);
break;
case 4: System.out.println(day +"." + " April " + year);
break;
case 5: System.out.println(day +"." + " May " + year);
break;
case 6: System.out.println(day +"." + " June " + year);
break;
case 7: System.out.println(day +"." + " July " + year);
break;
case 8: System.out.println(day +"." + " August " + year);
break;
case 9: System.out.println(day +"." + " September " + year);
break;
case 10: System.out.println(day +"." + " October " + year);
break;
case 11: System.out.println(day +"." + " November " + year);
break;
case 12: System.out.println(day +"." + " December " + year);
break;
default:
break;
}
break;
case 2:
System.out.println(day + "." + month + "." + year);
break;
case 3: if((day < 10) && (month < 10))
{
System.out.println(year + "-" + "0" + month + "-" + "0" + day);
}
else{
System.out.println(year + "-" + month + "-" + day);
}
}
return format;
}
public static void main(String[] args) {
try{
int printableInfo;
int year;
int date;
int month;
int format;
System.out.println("The programm will ask you to input year,date, month and then choose a format for printing.");
System.out.println("Insert year: ");
year = input.nextInt();
System.out.println("Insert date: ");
date = input.nextInt();
System.out.println("Insert month: ");
month = input.nextInt();
System.out.println("Choose format: [1] normal [2] shorten [3] official ");
format = input.nextInt();
printableInfo = returnCorrectFormat(year,date,month,format);
System.out.println(printableInfo);
}
catch (Exception e)
{
System.out.println("ERROR: closing program..");
System.exit(1);
}
}
Bedingte oder switch-Anweisung, die auf Eingabe basiert? – DarkV1
Es sollte Schalter-Format mit dem Format-Typ aus den Optionen sein, die der Endbenutzer will –