Fächer hinzufügen

anemona

Mitglied
Hallihallo!

Ich versuche, eine kleine app zu programmieren (Android SDK manager, Eclipse) um den Notenschnitt verschiedener Noten in versch. Fächern zu berechnen. Zu Beginn habe ich einen ganz normalen Javacode verfasst, um den durchschnitt von verschiedenen double-Werten berechnen zu können. In einem weiteren Schritt würde ich diesen Code gerne in eine App einbinden bzw. so verändern, dass der Benutzer per UserInput oder per Auswahl ein Schulfach zu seiner Liste mit Fächern hinzufügen kann und anschliessend den einzelnen Fächern Noten hinzufügen kann.


ungefähr so:

Auswahl (Mathe, Physik, Chemie etc.)->User wählt Mathe->wird im Benutzerkonto gespeichert->Liste mit hinzugefügten Fächern wird angezeigt->Noten können hinzugefügt werden->Durchschnitt wird berechnet


oder der Benutzer gibt selbst einen Titel für ein Schulfach ein, dieses wird gespeichert als ArrayList z.b und man kann Werte hinzufügen.

Ich hoffe ihr versteht meine Frage und könnt mir vielleicht helfen.

Vielen Dank fürs durchlesen :)
 

MrClave

Bekanntes Mitglied
Ich hoffe ihr versteht meine Frage und könnt mir vielleicht helfen.

Ich sehe keine Frage, lediglich deine Projektbeschreibung.

Wo genau liegt das Problem?

Konkretes Java Problem?
Programmstruktor/Aufbau?
Wie man die Daten am besten speichert, Stichwort Persistenz?
 

anemona

Mitglied
Ich weiss einfach nicht, womit ich anfangen soll.
Wie muss ich den Aufbau strukturieren und vorallem (blöd gesagt) was überhaupt verwenden. Ist es sinnvoll, durch jeden UserInput eine neue ArrayList zu kreieren und danach diese Speichern?
 

MrClave

Bekanntes Mitglied
Kommt drauf an, was du alles einbauen möchtest.

Hast du dir Gedanken über das UI gemacht?
Was willst du alles Speichern?
Willst du das Programm nur lokal laufen lassen oder über's Internet mit evt. Datenbankanbindung?
Gibt es ein Loginsystem?
Du hast von Benutzern gesprochen... Bist das in diesem Fall nur du, oder willst du es auch anderen anbieten?

Wobei ein schlichtes Notendurchschnitts-Programm keinen interessieren dürfte.
Da könntest du noch einen Hausaufgabenplaner einbauen, der einen immer rechtzeitig informiert bzw. warnt.
Evt. sogar eine Stundenplan funktion.


Mach dir erst ein mal Gedanken darüber, was dein Programm alles können soll, wie das dementsprechende UI aussehen soll, und wie du anschließend die Daten abspeichern willst.

Du könntest alles schön in einer DB speichern, irgendwas mit XML basteln, schlichte Textfiles benutzen (CSV) oder direkt ein ganzes Objekt abspeichern, welches die notwendige Datenstrukur beinhaltet.


Ist es sinnvoll, durch jeden UserInput eine neue ArrayList zu kreieren und danach diese Speichern?

Nein, es ist nicht sinnvoll. Du hast EINE Datenstruktur, die sowohl das Fach, als auch die Note hält.
Die wohl einleuchtenste Datenstruktur dürfte eine HashMap sein.

Java:
HashMap<String, Integer> meineDaten = new HashMap<String, Integer>( );

Hier fügst du dann jeweils immer das Fach als Key und die Note als Information ein.
Wie du diese dann anschließend speicherst, musst du wissen.
Soll der Benutzer dies manuell über einen Speichern-Button machen, automatisch nach dem hinzufügen eines neuen Faches (was weniger performant wäre) oder ganz einfach beim schließen des Programmes.
 
Zuletzt bearbeitet:

anemona

Mitglied
Vielen, vielen Dank für die Tipps!!! Ich verstehe jetzt zwar das Prinzip mit der HashMap, nur ist mir immer noch nicht klar, wie ich das anstellen soll, dass der Benutzer z.B Mathe eingibt und danach "automatisch" eine HashMap mit dem Titel, Mathe erstellt wird...
 

MrClave

Bekanntes Mitglied
Nein nein... Da wird nichts neues erstellt.

Du erstellst zu Programmbeginn die Map mittels
Java:
HashMap<String, Integer> noten = new HashMap<>( );
Was diesem hier, in mehr mennschlichen Worten, entsprechen würde:
Java:
Tabelle<Fach, Note> noten = new Tabelle<>( );

Hinzufügen tust du dann neue Fächer so:
Java:
noten.put( "Mathe", 4 );
noten.put( "Deutsch", 2 );

Du solltest dir definitiv, noch bevor du anfängst zu programmieren, damit anfangen, dir das JCF anzuschauen, und vor allem Hashing in Verbindung mit HashMap/Tables.

Bevor man Werkzeuge benutzt, sollte man diese verstehen.
Ansonsten läuft man nur in Fehler.
 

anemona

Mitglied
Das leuchtet ein. Ich überlege gerade, ob es nicht vielleicht schlauer wäre, eine Tabelle zu erstellen, wo alle Fächer bereits zur Auswahl stehen und der Benutzer, dann jeweils die Noten hinzufügen kann. Das sollte mit JTable möglich sein oder?
 

MrClave

Bekanntes Mitglied
Kommt wie gesagt darauf an, was du mit deinem Programm erreichen willst.
Wenn du es nur für allgemeine Fächer willst, würde dein Vorschlag theoretisch reichen.

Wenn du jedoch flexibel sein willst, wirst du nicht um eine Datenstruktur aus dem JCF drumherum kommen.
Oder du schreibst dir einfach deine eigene Klasse, die die Fächer und deren Noten verbindet.
Sollte kein Problem sein.

Es gibt auch nichts, wie DIE eine Lösung.
Beim programmieren geht es darum kreativ zu sein.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Warum muss ich ein SSL cert immer manuell hinzufügen? Java Basics - Anfänger-Themen 46
E Elemente aus Liste entfernen und hinzufügen Java Basics - Anfänger-Themen 3
F Einem GIT repository ein Projekt hinzufügen Java Basics - Anfänger-Themen 1
J neues Object (JLabel) vorab zum Layout hinzufügen , Location setzen, etc? Java Basics - Anfänger-Themen 2
N Welche Objekte kann man zu einem Set hinzufügen Java Basics - Anfänger-Themen 4
F SSL zu keystore hinzufügen Java Basics - Anfänger-Themen 1
mervanpolat Methoden Warum müssen wir "int ans = -1;" hinzufügen? Java Basics - Anfänger-Themen 2
NadimArazi Wie kann ich eine collision detection für die Paddles in meinem Pong Programm hinzufügen? Java Basics - Anfänger-Themen 4
I JPA CriteriaBuilder -> Custom SQL hinzufügen Java Basics - Anfänger-Themen 5
J Hinzufügen eines Objektes in ein Objekt-Array Java Basics - Anfänger-Themen 62
M Log4J (v2) nachträglich in allen Klassen hinzufügen Java Basics - Anfänger-Themen 9
B Zu Property Feld weitere Informationen hinzufügen? Java Basics - Anfänger-Themen 4
Soloeco JList/DefaultListModel: Wie kann ich ein Panel hinzufügen? Java Basics - Anfänger-Themen 1
G Druckerauftrag hinzufügen Java Basics - Anfänger-Themen 7
L Methoden ArrayList Werte hinzufügen und löschen Java Basics - Anfänger-Themen 32
C Nachträglich neue grafische Objekte hinzufügen Java Basics - Anfänger-Themen 7
Gaudimagspam Assertions im Programm hinzufügen Java Basics - Anfänger-Themen 4
N Typebound Objekte einer Arraylist hinzufügen Java Basics - Anfänger-Themen 7
J Java TextArea Text bei hinzufügen makieren Java Basics - Anfänger-Themen 1
M Hinzufügen eines Objekts auf ein Map Java Basics - Anfänger-Themen 4
T Collections Methode (Knoten hinzufügen) für Graphen Java Basics - Anfänger-Themen 32
L String zerlegen & elemente hinzufügen Java Basics - Anfänger-Themen 5
B String zu einem bestehenden String hinzufügen Java Basics - Anfänger-Themen 9
S IndexOutOfBoundsException beim hinzufügen eines Elements zu einer Liste Java Basics - Anfänger-Themen 11
AnnaBauer21 org.w3c.dom.Element - Neues Element hinzufügen Java Basics - Anfänger-Themen 4
CptK Datentypen Objekt lässt sich nicht zu arraylist hinzufügen Java Basics - Anfänger-Themen 2
M Wie kann ich hier ein Textfeld hinzufügen Java Swing? Java Basics - Anfänger-Themen 1
J Hinzufügen eines Objekts in eine Liste, um später dann nochmal auf das Objekt zugreifen zu können Java Basics - Anfänger-Themen 8
J mögliche Spielzüge zu Liste hinzufügen Java Basics - Anfänger-Themen 6
L Methoden Methoden hinzufügen?! Java Basics - Anfänger-Themen 1
Orkanson Datentypen Integer in String umwandeln/hinzufügen Java Basics - Anfänger-Themen 3
F Interface JButton von anderer Klasse hinzufügen Java Basics - Anfänger-Themen 2
F Variablen If else: Einer Variable einen Wert hinzufügen oder so? Java Basics - Anfänger-Themen 6
Arif Collections Unkonstruiertes Objekt einer Collection hinzufügen Java Basics - Anfänger-Themen 2
G Wie kann ich einem StringBuilder einen int Wert formatiert hinzufügen? Java Basics - Anfänger-Themen 8
D Hinzufügen einer Site zur Ausnahmeliste nicht möglich Java Basics - Anfänger-Themen 1
O Wert in einer URL hinzufügen (in meinem Beispiel Google) Java Basics - Anfänger-Themen 7
Silvascus Void Methode einem Stringparameter im syso-Befehl hinzufügen Java Basics - Anfänger-Themen 3
L0MiN Erste Schritte Neue Punkte zu einer Map hinzufügen und dauerhaft speichern? Java Basics - Anfänger-Themen 4
I Innerhalb einer Methode suchen und hinzufügen. Neues Objekt in Suche dann? Java Basics - Anfänger-Themen 8
Spencer Reid JavaDoc zu JavaFx hinzufügen Java Basics - Anfänger-Themen 1
J ArrayList<int[]> wird beim hinzufügen von werten komplett überschrieben warum? Java Basics - Anfänger-Themen 1
F Zeile bei JTable hinzufügen Java Basics - Anfänger-Themen 6
J Element zu jList hinzufügen NullPointerExcepetion Java Basics - Anfänger-Themen 2
S JTextField zu ArrayList hinzufügen Java Basics - Anfänger-Themen 3
M JMenuItem per Button hinzufügen Java Basics - Anfänger-Themen 2
K Windows Symbolleiste Icons hinzufügen Java Basics - Anfänger-Themen 7
B Listener beim Laden (deserialize) wieder hinzufügen bzw. mitspeichern? Java Basics - Anfänger-Themen 3
B Neue Bibliothek hinzufügen Java Basics - Anfänger-Themen 2
U Dokumentation einer Library hinzufügen Java Basics - Anfänger-Themen 3
F Swing Applet: mehrere Komponenten hinzufügen Java Basics - Anfänger-Themen 1
Sogomn JLabel in anderer Klasse zum JFrame hinzufügen Java Basics - Anfänger-Themen 2
X Konstante hinzufügen Java Basics - Anfänger-Themen 3
G element in ArrayList Hinzufügen Java Basics - Anfänger-Themen 16
J Bei Hinzufügen von JButton Programm langsam Java Basics - Anfänger-Themen 3
M ArrayList-Element hinzufügen u. löschen Java Basics - Anfänger-Themen 2
S Hinzufügen von jid3lib-0.5.4 Java Basics - Anfänger-Themen 3
D Bild zum Panel hinzufügen Java Basics - Anfänger-Themen 8
V Java Libraries Hinzufügen Ubuntu Java Basics - Anfänger-Themen 3
G Element einem Array hinzufügen Java Basics - Anfänger-Themen 7
B Wie kann man auf das JFrame einer anderen Klasse zugreifen, etwas hinzufügen und entfernen?? Java Basics - Anfänger-Themen 3
M Object people[][] Daten hinzufügen Java Basics - Anfänger-Themen 3
Joew0815 Classpath Eclipse - Library hinzufügen (NativeBass) Java Basics - Anfänger-Themen 23
L Vererbung Attributen der Oberklasse Attribute hinzufügen? Java Basics - Anfänger-Themen 3
P Per Button, Linien Hinzufügen und bearbeiten Java Basics - Anfänger-Themen 30
J Punkte hinzufügen Tabelle Java Basics - Anfänger-Themen 5
S Externe Bibliothek zu Resources hinzufügen? Java Basics - Anfänger-Themen 5
M Map mit Vektor: Element hinzufügen Java Basics - Anfänger-Themen 21
A Compiler-Fehler static Array Wert hinzufügen Java Basics - Anfänger-Themen 8
A Threads Zur Laufzeit hinzufügen/entfernen Java Basics - Anfänger-Themen 10
C Variablen array element hinzufügen/entfernen Java Basics - Anfänger-Themen 10
R Bestehendes Array ein Feld hinzufügen Java Basics - Anfänger-Themen 4
I Bestimmte Objekte einer Liste hinzufügen Java Basics - Anfänger-Themen 16
M Jlist Elemente hinzufügen Java Basics - Anfänger-Themen 2
P Nachträglich Klasse zu Package hinzufügen Java Basics - Anfänger-Themen 16
T jar datei Bild hinzufügen Java Basics - Anfänger-Themen 4
S JDom API Doc in eclipse hinzufügen? Java Basics - Anfänger-Themen 2
eLogic Panel hinzufügen Java Basics - Anfänger-Themen 4
S KeyListener aus anderer Klasse hinzufügen Java Basics - Anfänger-Themen 19
P Dropdownbox nach hinzufügen wieder öffnen Java Basics - Anfänger-Themen 7
K jButton zur Laufzeit hinzufügen Java Basics - Anfänger-Themen 22
J String zu String[] hinzufügen Java Basics - Anfänger-Themen 4
M Properties hinzufügen Java Basics - Anfänger-Themen 12
D Buchstaben den jeweiligen Zahlen hinzufügen mit einer if. Java Basics - Anfänger-Themen 6
K Funktion zu einem JButton hinzufügen Java Basics - Anfänger-Themen 27
R Datentypen In String nach String suchen und hinzufügen Java Basics - Anfänger-Themen 2
N Dateiinhalt zu jTextArea hinzufügen Java Basics - Anfänger-Themen 2
A Array ein element hinzufügen. Java Basics - Anfänger-Themen 6
P | zu einer hashtable hinzufügen Java Basics - Anfänger-Themen 7
S OOP Wie bei Spiel "17+4" eine Karte an bestimmte Position hinzufügen Java Basics - Anfänger-Themen 13
A int[] werte hinzufügen Java Basics - Anfänger-Themen 3
I Daten über Konsole hinzufügen Java Basics - Anfänger-Themen 22
G Zeichen Pro schleifendurchlauf hinzufügen Java Basics - Anfänger-Themen 7
S GridBagLayout neue Objekte hinzufügen Java Basics - Anfänger-Themen 3
A Hinzufügen neuer Pakete Java Basics - Anfänger-Themen 5
X ZipFile: wie kann ich darin eine Datei löschen und hinzufügen? Java Basics - Anfänger-Themen 5
0x7F800000 "Kommentare" an Dateien hinzufügen/auslesen? [edit: "Metadaten"] Java Basics - Anfänger-Themen 4
A Hinzufügen von Elementen in ArrayList Java Basics - Anfänger-Themen 2
A Applet Bild zu laufzeit hinzufügen Java Basics - Anfänger-Themen 4
M im Programm TextArea hinzufügen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben