Wie verwende ich Listen

T

Toonfish

Gast
Hallo liebe Java-Community,

ich versuche zur Zeit Java zu lernen, und beherrsche die kleinsten Grundlagen, also einfache Programme mit Auswahlanweisungen, Schleifen usw. zu schreiben. Jetzt wollte ich versuchen ein Programm mit Listen zu schreiben, so eine Art Quiz, wo jeweils die Fragen, die Antworten und welche Antwort bei der jeweiligen Frage richtig ist, in Listen stehen (Die Antworten mit dem Index x gehören in dem Fall zum Element mit dem Index X in der Liste mit den Fragen) . Ich hab versucht über diverse Seiten etwas über den Gebrauch von Listen herauszufinden, konnte es aber noch nicht fertig bringen eine funktionierende Liste zu schreiben. Deshalb frage ich euch, ob ihr mir erklären könnt, wie ich eine Liste erstelle, Elemente hinzufügen(Anzahl steht schon fest), und Elemente abfrage. Ich bedanke mich schon mal im Vorraus und wünsche euch ncoh viel Spaß beim Programmieren^^

MfG Toonfish
 

Volvagia

Top Contributor
Erzeugen mit new, hinzufügen mit add, auslesen mit get (oder über einen Iterator, das kannst du dir fürm Anfang aber spaaren) und entfernen mit remove.
Zeig lieber mal, was du versucht hast.

Edit: Stimmt. ^^ Und die richtige Antworten-ID war im falschen Block. Schnell mal gefixt, sollte nicht so hetzen. *aufs Koffeein schieb*

Davon abgesehen würde ich den OOP-Weg vorziehen:
 

Anhänge

  • uml.PNG
    uml.PNG
    2,6 KB · Aufrufe: 47
Zuletzt bearbeitet:
T

Toonfish

Gast
Also ich hab mir dieses Galileo Computing nochmal genauer angeschaut und glaube ich alles falsch gemacht ^^"

Naja es funktioniert jedenfalls nicht, ich kriege den Fehler "cannot find symbol" und verstehe nciht ganz warum, hier ist der Quellcode:


import java.util.ArrayList;
import java.util.Iterator;
import java.util.*;

public class quiz
{
public static void main(String[] args)
{

//##################### Vaiablendefinition #####################################

int Spiel = 1;
char Anwort = 'a';
int rand = 1;
int Fragenummer = 0;
int Frage1 = 15;
int Frage2 = 15;
int Frage3 = 15;
int Frage4 = 15;
int Gewinn = 0;

//##################### Listendefinition #######################################

List<String> fragen = new ArrayList<String>();
List<String> anta = new ArrayList<String>();
List<String> antb = new ArrayList<String>();
List<String> antc = new ArrayList<String>();
List<String> antd = new ArrayList<String>();
List<String> antr = new ArrayList<String>();

fragen.add("Der Himmel ist");
anta.add("blau");
antb.add("grün");
antc.add("rosa");
antd.add("braun");


//##################### Frageblock 1-5 #########################################

while(Spiel == 1)
{
while(Fragenummer <= 5)
{
Fragenummer = Fragenummer + 1;
do
{
// rand = (int)Math.floor((Math.random() * 10000) + 1); // hab jetzt erstmal eine frage drin, daher auskommentiert
rand = 0; //hab erst eine Frage drin, daher gleich auf index 0 gesetzt
}
while(rand == Frage1 ||rand == Frage2 ||rand == Frage3 ||rand == Frage4);
Antwort = IO.getChar("" + fragen.get(rand) + "\n" + anta.get(rand) + "\n" + antb.get(rand) + "\n" + antc.get(rand) + "\n" + antd.get(rand) + "\ne Aufhören");
if(Antwort == "e")
{
IO.Show("Schade, Sie haben nur " + Gewinn + "€ gewonnen.");
Spiel = 0;
Fragenummer = 16;
}
else
{
if(Antwort != antr.get(rand))
{
Spiel = 0;
IO.show("Leider falsch, die richtige Antwort war Antwort " + antr.get(Rand) + ".");
IO.show("Schade, Sie haben nichts gewonnen.");
}
else
{
Gewinn = 200 * Fragenummer;
IO.show("Gewonnen");
}

}

}
}

}
}

Ich hoffe mal ihr werdet daraus schlau ^^"
 

XHelp

Top Contributor
Es steht doch GROSS GENUG UND ROT auf der Seite über die Verwendung von Java-Tags :noe:
Darüber hinaus kriegst du doch zu der Fehlermeldung auch eine Zeilenangabe. Es wäre auch nicht verkehrt diese zu posten.
Des weiteren solltest du auf die Namensgebung direkt von Anfang an achten: ichBinEinVariable, IchBinEineKlasse
 
T

Toonfish

Gast
Ach mir fällt grad auf, ich benutze hier Methoden von "IO Informatik on Stick" IO.Show gibt das jeweilige aus, x = IO.getInt speichert den daraufhin vom Benutzer eingegebenen Wert in der Variable x usw.

Hoffentlich ist das jetzt kein zu großes Problem^^
 
T

Toonfish

Gast
Ach das war damit gemeint, okay tut mir Leid, der Fehler war in der Zeile:

Java:
 Antwort = IO.getChar("" + fragen.get(rand) + "\n" + anta.get(rand) + "\n" + antb.get(rand) + "\n" + antc.get(rand) + "\n" + antd.get(rand) + "\ne Aufhören");

Der Fehler sieht folgendermaßen aus:

quiz.java:60:19: cannot find symbol
symbol : variable IO
location: class quiz
Antwort = IO.getChar("" + fragen.get(rand) + "\n" + anta.get(rand) + "\n" + antb.get(rand) + "\n" + antc.get(rand) + "\n" + antd.get(rand) + "\ne Aufhören");
 
T

Toonfish

Gast
Doch habe ich wie oben im Quellcode lesbar. (Char Antwort = 'a')

Aber ich glaube den Fehler gefunden zu haben, anscheinend hat er ein Problem mit den Methode mit "IO", habe grade nochmal ein einfaches Programm geschrieben und auch da bekomme ich den selben Fehler bei den IO Anweisungen. Werde das morgen nochmal auf dem PC ausprobieren, an dem das funktioniert.

Habe ich die Listen ansonsten richtig definiert und abgefragt?
 
T

Toonfish

Gast
Oh, im Programm steht aber "Antwort" bei der Definition, hab's garde nochmal geprüft, es liegt wie gesagt an dem IO.

Ansonsten bedank ich mich bei allen die bis jetzt geholfen haben und entschuldige mich noch einmal für die vergessenen Java tags.
 

Volvagia

Top Contributor
Ach so, was mir noch aufgefallen ist, du hast IO nicht importiert. Ich nehme an, das ist eine externe Lib und liegt nicht im selben Package?
 
T

Toonfish

Gast
Eigentlich hat er das immer automatisch gemacht, aber naja es ist jetzt egal, ich bin auf die standart-input-output Funktionen umgestiegen und jetzt funktioniert alles wunderbar, also vielen Dank nochmal für eure Denkanstöße^^
 

Landei

Top Contributor
Solche Hilfsklassen wie IO waren mal praktisch, inzwischen braucht sowas kein Mensch mehr (außer verkalkte Professoren, die ihre Scripts nicht ändern wollen): Für die Ausgabe gibt es Funktionen, die das Formatieren übernehmen, wie [c]System.out.printf[/c]. Für der Eingabe gibt es die Klasse [c]java.util.Scanner[/c], die [c]nextInt[/c], [c]nextDouble[/c] u.s.w. zur Verfügung stellt.
 

tuttle64

Bekanntes Mitglied
List<String> fragen = new ArrayList<String>();
List<String> anta = new ArrayList<String>();
List<String> antb = new ArrayList<String>();
List<String> antc = new ArrayList<String>();
List<String> antd = new ArrayList<String>();
List<String> antr = new ArrayList<String>();


Das Design für die Fragen und Antworten finde ich nicht gerade optimal. Z.B. Für den Fall, wo es zu einer Frage mehr als 5 Antworten gibt. Zudem gibt es auch Multiple Choice Fragen, wo mehrere Antworten zu einer Frage möglich sind. Was dann?
 
T

Toonfish

Gast
Das ganze wird im Stil von "Wer wird Millionär" gehalten, es gibt also immer nur 4 Antworten und immer nur eine ist richtig.
 
Q

Quarksel

Gast
Ähm ja hallo, ich hab hier grad das THema gesehen und dachte mir das passt hier halbwegs rein. Ich wollte gerne wissen, wie ich einfach, also mit wenig Code mehrere Elemente gleichzeitig in eine Liste eintrage. Bisher musste ich das immer mit einer einzelnen .add Anweisung machen was mir doch etws zu unpraktisch wird, könnt ihr mir bitte helfen, wäre sehr nett von euch.

LG Quarksel
 
Q

Quarksel

Gast
Also, ich wollte mehrere vordefinierte Informationen in eine Liste eintragen, z.B. möchte ich in die Liste Auto die Elemente "VW", "BWM", "Mercedes" usw. einfügen.
 
Q

Quarksel

Gast
Die Daten bleiben konstant, und sollen unmittelbar nach dem Start des Programmes der Liste hinzugefügt werden.
 
Q

Quarksel

Gast
Ah Okay, ich hab mri grade dieses "Galileo Computing" von der ersten Seite angeguckt und da den Befehl "Collections.addAll" gefunden, das hat geholfen. Auch wenn es jetzt nicht von dir kam, bedanke ich mich trotzdem bei dir, dass du mir helfen wolltest :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Maven Swing: Wie verwende ich WindowListener ? Java Basics - Anfänger-Themen 2
berserkerdq2 Brauche ich while != -1, wenn ich immer einen BufferedReader verwende? Java Basics - Anfänger-Themen 8
L Worauf muss ich achten, wenn ich externe Bibliotheken für meine Anwendungen verwende? Java Basics - Anfänger-Themen 6
S Wie verwende ich ne aus einer Schleife nach der Schleife? Java Basics - Anfänger-Themen 9
C this - wann verwende ich das? Java Basics - Anfänger-Themen 10
G Datei aus eigener JAR-Datei verwende Java Basics - Anfänger-Themen 2
D Listen in Listen in Listen ... ??? Java Basics - Anfänger-Themen 2
XWing listen Java Basics - Anfänger-Themen 7
FunkyPhil94 addLast und addFirst bei Listen Java Basics - Anfänger-Themen 6
S Einfach-Verkettete-Listen Ausgabe zeigt nur 1. und letzte instanz Java Basics - Anfänger-Themen 2
J 2 listen vergleichen, die auch null Elemente haben können ! Java Basics - Anfänger-Themen 9
W Liste mit Listen in JTable darstellen Java Basics - Anfänger-Themen 1
Buroto Threads Verschiedene .txt Dateien Auf Listen und Verbinden Java Basics - Anfänger-Themen 3
M Generics Vererbung Listen Java Basics - Anfänger-Themen 2
T Collections Sind Subklassen-Objekte in Listen mit Generics erlaubt? Java Basics - Anfänger-Themen 16
S Lineare listen verkettung Java Basics - Anfänger-Themen 7
S Listen Java Basics - Anfänger-Themen 12
S Listen , Nodes am ende anängen Java Basics - Anfänger-Themen 6
P Sortieren von Listen nach Attributen Java Basics - Anfänger-Themen 3
M Java Listen Java Basics - Anfänger-Themen 4
V einfach verkettete Listen Java Basics - Anfänger-Themen 10
A PhoneBook mit verketteten listen Java Basics - Anfänger-Themen 48
F ich brauche Hilfe bei Listen Java Basics - Anfänger-Themen 13
M (Sehr großes Problem) Listen als static in anderen Klassen verwendet Java Basics - Anfänger-Themen 12
G Java Listen und Iterator Java Basics - Anfänger-Themen 2
S Erklaerung Listen Java Basics - Anfänger-Themen 27
J Implementierung Listen-ADT Java Basics - Anfänger-Themen 131
I Alle Elemente von zwei Listen vergleichen Java Basics - Anfänger-Themen 1
L Skip Listen Java Basics - Anfänger-Themen 5
S Collections funktionale Listen (ListNode<E>) review und problem beim clone Java Basics - Anfänger-Themen 0
L Wie testet man (selbstgeschriebene) Listen sinnvoll? Java Basics - Anfänger-Themen 2
F Problem mit Listen Java Basics - Anfänger-Themen 5
J Listen Operationen Java Basics - Anfänger-Themen 4
O Unterschied Arrays, Listen, Mengen Java Basics - Anfänger-Themen 24
J Eine Liste von Listen erstellen Java Basics - Anfänger-Themen 11
A Sortierte Listen Java Basics - Anfänger-Themen 4
L Datenstrukturen/ Listen Java Basics - Anfänger-Themen 17
A Was könnten typische Prüfungsaufgaben zum Thema lineare, verkettete Listen sein? Java Basics - Anfänger-Themen 5
L Listen und Felder Java Basics - Anfänger-Themen 2
M Fragen zum Anlegen und Benutzen von Listen Java Basics - Anfänger-Themen 9
R Arrays und Listen Java Basics - Anfänger-Themen 1
R Listen richtig implementieren Java Basics - Anfänger-Themen 3
F Multidimensionale Listen Java Basics - Anfänger-Themen 3
F Wie String in unterschiedliche Listen teilen Java Basics - Anfänger-Themen 7
R Interface Eigene Objekte in Listen sortieren mit Interface Comparable Java Basics - Anfänger-Themen 5
T Objekte in Listen vererben Java Basics - Anfänger-Themen 3
A Klassen Klassen und Listen... Java Basics - Anfänger-Themen 5
Hacer Operationen einfach verketteter Listen Java Basics - Anfänger-Themen 22
S Methoden Vergleichen von zwei Listen in der Geschwindigkeit von O(n+m) Java Basics - Anfänger-Themen 32
P Listen sortieren mit Binärbaum gibt keine Ausgabe ab 10000 Integern Java Basics - Anfänger-Themen 14
C Listen Java Basics - Anfänger-Themen 3
C Zwei Listen verbinden Java Basics - Anfänger-Themen 1
C Zahlen merken mit Hilfe von Arrays/Listen Java Basics - Anfänger-Themen 2
E Feld von verketteten Listen Java Basics - Anfänger-Themen 11
T Überprüfung einer Aufgabe zu verketteten Listen Java Basics - Anfänger-Themen 5
S Liste mit Objekten und Listen Java Basics - Anfänger-Themen 9
JarJarBigs Frage zu Listen Java Basics - Anfänger-Themen 2
N verkettete Listen Java Basics - Anfänger-Themen 4
O Listen sort-Methode Java Basics - Anfänger-Themen 1
I Listen sortieren bei mehreren Listen zu einer Java Basics - Anfänger-Themen 2
L Lineare Listen Java Basics - Anfänger-Themen 2
S Listen Objekte nach LocalDateTime sortieren Java Basics - Anfänger-Themen 2
D Methoden Listen generieren Java Basics - Anfänger-Themen 4
A Sichtbarkeit in Methoden/Listen Java Basics - Anfänger-Themen 3
M verkettete Listen Java Basics - Anfänger-Themen 1
D Klausur Vorbereitung: Listen, Rekursion, Bäume & Vererbung Java Basics - Anfänger-Themen 3
S Vergleich von Listen Java Basics - Anfänger-Themen 6
I Zwei Listen vergleichen Java Basics - Anfänger-Themen 2
M Listen erstellen mit unterschiedlichen Reihenfolgen Java Basics - Anfänger-Themen 3
I Zwei Listen vergleichen bei n:m Beziehung Java Basics - Anfänger-Themen 2
I Zwei Listen: Wenn nicht vorhanden löschen Java Basics - Anfänger-Themen 4
I Prüfen von zwei Listen Java Basics - Anfänger-Themen 1
K Interface Generics, Interfaces und Listen - ich bin verwirrt. Java Basics - Anfänger-Themen 7
L Best Practice Alle Kombinationen aus Listenelementen, Anzahl Listen unterschiedlich Java Basics - Anfänger-Themen 6
llabusch Verkette Listen - Einfach und Doppelt Java Basics - Anfänger-Themen 3
S Unsortierte Listen - Frage zur "Verkettung" Java Basics - Anfänger-Themen 1
I Zwei Listen vergleichen Java Basics - Anfänger-Themen 7
I Listen, for - Schleifen Java Basics - Anfänger-Themen 8
P Listen Size stimmt nicht Java Basics - Anfänger-Themen 5
O Objekt Listen serialisierung und deserialisieren Java Basics - Anfänger-Themen 5
L Collections Objekte in Listen speichern Java Basics - Anfänger-Themen 3
G 2 Listen kombinieren und nach abc sortieren Java Basics - Anfänger-Themen 9
D Annonyme Innere Klasse: Listen mit geradem Index ausgeben Java Basics - Anfänger-Themen 6
G Listen sortieren Java Basics - Anfänger-Themen 3
G Generic und Listen Java Basics - Anfänger-Themen 8
R SQL ähnlicher Filter für Java Listen Java Basics - Anfänger-Themen 2
Y Collections 4 Listen Java Basics - Anfänger-Themen 14
S OOP/ Listen...etc... Java Basics - Anfänger-Themen 14
E Listen Java Basics - Anfänger-Themen 2
V Methoden Verkettete Listen Index eines Elementes ausgeben Java Basics - Anfänger-Themen 10
B Listen Java Basics - Anfänger-Themen 3
B eigene klasse in listen eintragen Java Basics - Anfänger-Themen 6
B Map per Listen Java Basics - Anfänger-Themen 2
S Erfahrungswerte von schnelles durchlaufen von Listen mit 2 Werten Java Basics - Anfänger-Themen 10
Joew0815 Problem mit Listen: add() Java Basics - Anfänger-Themen 11
P Zeichenorientierte & Serialisierte Datenverarbeitung Listen Java Basics - Anfänger-Themen 8
E Listen und Generics Java Basics - Anfänger-Themen 9
L dynamisches erzeugen von array Listen Java Basics - Anfänger-Themen 7
E Listen und Duplikate Java Basics - Anfänger-Themen 2
R Hilfe bei Listen Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben