Übungen zur ArrayList?

Kann mir bitte jemand bei diesen Aufgaben helfen. Bitte, es wäre sehr hilfreich!

Übung zur ArrayList

Übung 1: Klassen erzeugen

Erstellen Sie eine Klasse „Fach“ bzw. „Subject“ entsprechend des abgebildeten Klassendiagramms:

Erstellen Sie eine Klasse "Fachverwaltung" bzw. „SubjectOrganizer“ wie in diesem Klassendiagramm:

Übung 2: Konstruktor

Konstruktor der Klasse „Faecherverwaltung“:

- Weisen Sie der ArrayList mittels entsprechender ArrayList-Methoden fünf Fächer (Lieblingsfächer) zu.

- Geben Sie mittels foreach-Schleife alle Fächer auf der Konsole aus, etwa so:

»Meine Lieblingsfächer sind: Mathe, APR, IMCM, Deutsch, Englisch«

Übung 3: Lieblingsfächer mit Iterator

Methode „beste Fächer“:

Durchlaufen Sie die ArrayList mittels Iterator und lassen Sie die Fächer mit Note auf der Konsole ausgeben, etwa so:

»APR: 1.0

IMCM: 1.1

Mathe: 1.2

Deutsch: 1.3

Englisch: 1.3«

Übung 4: Klasse erweitern

Erweitern Sie die Klasse „Faecherverwaltung“ entsprechend der folgenden Abbildung:

Hinweis zur Methode alleFaecherAusgeben(): Ausgabe aller Faecher in der Konsole.

Hinweis zur Methode getAlleFaecherAlsString():String - In dieser Methode müssen Sie einen String "zusammenbauen" und schließlich als String zurückgeben.

Hinweis zur Methode notendurchschnittDerFaecherBerechnen():double – Der Notendurchschnitt sollte berechnet und zurückgegeben werden.

Übung 5: Fach löschen

Methode „Fach löschen“:

Finden Sie das Fach mit der schlechtesten Note, geben Sie das Fach mit Note auf der Konsole aus und löschen Sie es aus der Fächerverwaltung.

Bild zum Beitrag
Java, Array, Programmiersprache
Werte aus Datenbank anzeigen mit JS?

Hallo,

ich habe folgenden Code für mein Formular:

<form action="/message1" method="post">
  <div class="input">
    <input type="text" placeholder="Chat" id="input" name="input1">
  </div>
  <div class="send">
    <button type="submit" onclick="message();">Send</button>
  </div>
</form>

Nun noch das JS onclick-Event:

function message() {
  input = document.getElementById("input").value;
  count++;

  if (input == "") {
    alert("please type your message!");
  }
  else {
    if (count % 2 == 0) {
      let newDiv = document.createElement("div");
      newDiv.id = "divMessage";
      newDiv.style.display = "flex";
      newDiv.style.justifyContent = "flex-start";
      newDiv.style.margin = "45px";
      newDiv.style.backgroundColor = "#303032";
      newDiv.style.borderRadius = "10px";
      newDiv.style.padding = "10px";
      newDiv.style.marginTop = "80px";
      newDiv.style.color = "white";
      newDiv.style.marginBottom = "80px";
      newDiv.style.width = "120px";
      newDiv.innerHTML = input;

      let chatMessages = document.querySelector(".chat-messages");
      chatMessages.appendChild(newDiv);
    }

Und nun noch das Reinschreiben mit node.js in die MariaDB-Datenbank:

app.post('/message1', async (req, res) => {
  const input = req.body.input1;
  console.log(input);
  const conn = await pool.getConnection();
  await conn.query(`INSERT INTO test.handy (id, name) VALUES (2, '${input}')`);
  conn.release();
});

Nun möchte ich aber, das, was in die Datenbank geschrieben wurde, beim Aktualisieren der Seite immer noch im "newDiv" anzeigen. Wie geht das?

LG

HTML, Webseite, Datenbank, Programmiersprache, Webentwicklung
JavaScript EventListener funktioniert nicht richtig?

Mein JS-Code:

'use strict'

let lines = document.getElementsByClassName("src-line");
let activeLine = -1;

for (let i1 = 0, i2 = lines.length; i1 < i2; i1++) {
  lines[i1].addEventListener("mouseover", function(){
    lines[i1].style.cursor = "text";
  });
  lines[i1].addEventListener("click", function(){
    activeLine = i1;
    console.log(activeLine);
  });
}
addEventListener("keydown", keypressed(e));

function keypressed(e) {
  if (activeLine != -1) {
    if (e.key == "Backspace") {
      console.log("Backspace");
      ediText[activeLine] = ediText[activeLine].substring(0, ediText[activeLine].length - 1);
    }
    else if (e.key == "Tab") {
      ediText[activeLine] += "&nbsp;&nbsp;&nbsp;&nbsp;";
    }
    else if (e.key == "Shift") {
      return;
    }
    else if (e.key == "Space") {
      ediText[activeLine] += "&nbsp;";
    }
    else {
      ediText[activeLine] += e.key;
    }

    console.log(e.key)
    charCompiler(ediText);
  }

  return 0;
};

Wenn ich nun auf ein Element mit der Klasse src-line klicke, wird in der Konsole immer der Listenindex angezeigt. Ich habe momentan zwei, also zeigt es immer 0 oder 1 an.

Wenn ich jetzt allerdings anfange, Buchstaben einzugeben, wird das zuletzt angeklickte Element verändert. Jedoch kann ich jetzt nicht mehr das Element wechseln, denn klicke ich jetzt auf das andere Element, wird das click-Event nicht mehr aufgerufen. D.h. activeLine wird nicht mehr geändert. Ich habe keinen Plan, warum.

Ist evtl. am Code was falsch, weil ich habe keine Ahnung warum das click-Event nach dem keydown einfach ignoriert wird, obwohl es davor ja noch ging. Btw wird auch in der Konsole beim Klicken danach nichts mehr angezeigt.

Computer, Technik, HTML, Webseite, programmieren, JavaScript, Click, HTML5, Entwicklung, Programmiersprache, Technologie, Webentwicklung, Entwicklungsumgebung

Meistgelesene Beiträge zum Thema Programmiersprache