Array List bearbeiten?
Hallo zusammen

Benötige eure Unterstützung bei zwei Aufgaben die ich versucht habe zu lösen.

Leider bisher ohne Erfolg.

Aufgabe 1

Die Klasse Person sieht wie folgt aus:

public class Person {
   public String name;
   public int jahrgang;
   
   public Person(String n, int j) {
      this.name = n;
      this.jahrgang = j;
   }
}

Ersetze den Namen der zweiten Person mit "Peter" in dem du den Namen im bestehenden Objekt anpasst. Das bestehende Objekt soll also nicht überschrieben, sondern nur geändert werden.

import java.util.ArrayList;
public class Test {

   public static void main(String[] args) {
   
      ArrayList<Person> personen = new ArrayList<Person>();
      Person p1 = new Person("Hans",1997);
      Person p2 = new Person("Petra",1998);
      personen.add(p1);
      personen.add(p2);

Meine falsche Antwort:

Person p2 = Person("Peter", 1998);

Weitere Aufgabe:

Die Klasse Person2 sieht wie folgt aus:

public class Person2 {
   private String name;
   
   public Person2(String n) {
      this.name = n;
   }
   
   public String getName() {
      return name;
   }
   
   public void setName(String n) {
      name = n;
   }
}

Ersetze den Namen der zweiten Person mit "Fred" in dem du den Namen im bestehenden Objekt anpasst. Das bestehende Objekt soll also nicht überschrieben, sondern nur geändert werden.

import java.util.ArrayList;
public class Test {

   public static void main(String[] args) {
   
      ArrayList<Person2> personen2 = new ArrayList<Person2>();
      personen2.add(new Person2("Franz"));
      personen2.add(new Person2("Franziska"));


Meine falsche Antwort: 
personen2.set(1, new Person("Fred"));


Vielen Dank euch für die Hilfe und Erklärungen.

Java, Array
Array list?? Namenausgabe nach Typ?
Aufgabenstellung

Die folgende Anwendung erfasst Namen und Rollen in einem Multiplayer-Game mit fünf Spielern. Spieler haben entweder die Rolle Offender (abgekürzt mit O) oder Invador (abgekürzt mit I). Sowohl Name wie auch Rolle werden über die Konsole eingegeben.

Nach dem alle fünf Spieler erfasst wurden, sollen die Namen der Spieler nach Rollen getrennt auf die Konsole ausgegeben werden.

Zum Speichern der Angaben eines Spielers wird die Klasse Player verwendet. Die Objekte aller Spieler werden in der ArrayList players gespeichert. Die Klasse Player ist bereits vorhanden und muss nicht geändert werden.

Aufgaben:

  1. Das Einlesen von Namen und Rollen ist bereits vorhanden. Ergänze die Klasse Main um das Speichern der Eingaben in der ArrayList.
  2. Ergänze die Klasse Main um die Ausgabe der Namen getrennt nach Rollen so wie im Beispiel unten gezeigt.

import java.util.ArrayList;

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

ArrayList<Player> players = new ArrayList<Player>();

Scanner keyScan = new Scanner(System.in);

for (int i=0; i<5; i++) {

System.out.print("Name: ");

String name = keyScan.nextLine();

System.out.print("Role (O or I): ");

String role = keyScan.nextLine();

// TODO: Player der ArrayList hinzufügen

}

System.out.println("\nOffenders:");

// TODO: Namen aller Offenders ausgeben

System.out.println("\nInvaders:");

// TODO: Namen aller Invaders ausgeben

keyScan.close();

}

}

----

Muss man nichts mehr machen.

public class Player {

String name;

String role;

public Player(String name, String role) {

this.name = name;

this.role = role;

}

public String getName() {

return name;

}

public String getRole() {

return role;

}

}

Vielen Dank euch für die Hilfe.

Java, Array, Programmiersprache
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.