ich hoffe das reicht an code um es zu erklären.
ich möchte eine ausgabe bekommen die in etwa so aussieht:
würde mich freuen wenn ihr mir helfen könnt.
ich möchte eine ausgabe bekommen die in etwa so aussieht:
Code:
Katze:
Nick
Nick
Hund:
Nick ....
Java:
package animals;
import java.util.Collections;
import java.util.Scanner;
import java.util.LinkedList;
public class Main {
//public static Animal oSelected;
static LinkedList<Animal> zoo = new LinkedList<Animal>();
/**
*
* @param args
*/
public static void main(String[] args) {
boolean bExit = false;
Animal oSelect;
while (!bExit) {
oSelect = select();
if (oSelect == null) {
bExit = true;
continue;
}
}
}
private static Animal select() {
try {
Animal oSelect = null;
boolean bExit = false;
do {
System.out.println("\nBitte wählen Sie :");
System.out.println("Tier ansehen \t<a>");
System.out.println("Tier erstellen\t<e>");
System.out.println("Beenden \t<b>");
Scanner oScanner = new Scanner(System.in);
char chInput = oScanner.next().charAt(0); // gibt char zurück
switch (chInput) {
case 'a':
Main.selectAnimal(false);
break;
case 'e':
Main.createAnimal();
break;
case 'b':
bExit = true;
oSelect = null;
break;
default:
System.err.println("Sie haben einen falschen Buchstaben eingegeben.");
}
} while (!bExit);
return oSelect;
} catch (Exception oExc) // erstelle Exception Objekt
{
oExc.printStackTrace(); // gebe Ausnahme aus (Objekt)
return null;
}
}
private static Animal createAnimal() {
boolean bStatus;
try {
Animal oSelected = null;
boolean bExit2 = false;
do {
// Ausgabe
System.out.println("\nBitte suchen Sie sich ein Tier aus :");
System.out.println("Katze \t<k>");
System.out.println("Hund \t<h>");
System.out.println("Maus \t<m>");
System.out.println("Zurück \t<z>");
// Eingabe
Scanner oScanner = new Scanner(System.in);
char chInput = oScanner.next().charAt(0); // gibt char zurück
switch (chInput) {
case 'k':
oSelected = new Cat();
zoo.add(oSelected);
break;
case 'h':
oSelected = new Dog();
zoo.add(oSelected);
break;
case 'm':
oSelected = new Mouse();
zoo.add(oSelected);
break;
case 'z':
bExit2 = true;
break;
default:
System.err.println("Sie haben einen falschen Buchstaben eingegeben.");
}
} while (oSelected == null && !bExit2);
//Ausgabe Nickname
System.out.println("\nBitte geben Sie den Spitznamen des Tieres ein.");
Scanner oScanner = new Scanner(System.in);
oSelected.setNickname(oScanner.next());
System.out.println("\nBitte geben Sie das Datum in tt.mm.jjjj");
bStatus = true;
while (bStatus) {
//Ausgabe Datum
Birthday oDate = new Birthday();
if (!oDate.checkSyntax(oScanner.next())) {
System.err.println("falsche Datumssyntax");
continue;
}
oSelected.setBd(oDate);
bStatus = false;
}
return oSelected;
} catch (Exception oExc) // erstelle Exception Objekt
{
oExc.printStackTrace(); // gebe Ausnahme aus (Objekt)
return null;
}
}
public static boolean selectAnimal(boolean bSelectAnimal) {
String nickname;
try {
bSelectAnimal = false;
do {
System.out.println("\nBitte wählen Sie ein Menüpunkt aus.");
System.out.println("Name \t<n>");
System.out.println("Alle Tiere \t<a>");
System.out.println("Zurück \t<z>");
Scanner oScanner = new Scanner(System.in);
char chInput = oScanner.next().charAt(0);
switch (chInput) {
case 'a':
[COLOR="Red"] //Hier ist mein Problem[/COLOR]
break;
case 'n': {
System.out.println("\nBitte geben sie den Namen des Tieres ein:");
nickname = oScanner.next();
Animal oMyAnimal = null;
int i = 0;
boolean bFound = false;
while (i < zoo.size() && !bFound) {
oMyAnimal = zoo.get(i);
bFound = oMyAnimal.getNickname().equals(nickname);
i++;
}
if (bFound) {
// Jetzt Menü für oMyAnimal aufrufen
oMyAnimal.setIndex(false);
} else {
// Fehlerbehandlung: Tier nicht vorhanden
System.out.println("Dieses Tier gibt es nicht!");
break;
}
}
case 'z': {
return true;
}
default: {
System.err.println("Sie haben ein falsches Zeichen eingegeben");
break;
}
}
} while (!bSelectAnimal);
} catch (Exception oExc) // erstelle Exception Objekt
{
oExc.printStackTrace(); // gebe Ausnahme aus (Objekt)
bSelectAnimal = false;
}
return bSelectAnimal = true;
}
}
Zuletzt bearbeitet von einem Moderator: