Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

8 zufällige zahlen ermitteln

Empfohlene Antworten

Veröffentlicht

Guten Morgen,

Ich lerne momentan java und habe eine Aufgabe bekommen, bei der ich Konten und Kunden erstellen soll.

Ich habe jetzt eine methode zur Kundenerstellung.

So sieht momentan mein aufruf aus und die Methode:


bank.erstelleKunde(321232, "Marcel", "Mustermann");  // als beispiel

methode:

public void erstelleKunde(int kundenNummer, String vName, String name)

{

   Kunde kunde = new Kunde();

   kunde.setKundenNummer(kundenNummer);

   kunde.setKundenVorname(vName);

   kunde.setKundenName(name);


   kunden.add(kunde); // hinzufügen einer arrayliste

}

Meine Frage: Wie kann ich eine zufällige Kundennummer zuweisen, sagen wir mal die 8 stellen lang ist und die nicht doppelt verteielt wird, wenn ich die Methode mehrmals aufrufe.

Also wie gesagt ich lerne noch :S.

Eine zufällige Zahl kannst du dir entweder mit der Methode Math.random() berechnen, oder, wenn es wie in deinem Fall öfters vorkommen kann, über ein Random Objekt.

Entweder du lässt dir mit den Methoden sofort eine bis zu 8-stellige Zahl errechnen, dann kann es aber auch vorkommen, dass die Zahl weniger als 8 Stellen hat. Oder die erzeugst dir 8 zufällige Zahlen, und setzt die dann zusammen.

Bevor du diese Zahl dann natürlich einem Kunden zuweist, musst du überprüfen ob diese noch nicht benutzt wurde. Entweder gehst du dafür alle Kunden durch und vergleichst die Nummern. Oder du wechselt, ich denke mal Liste, gegen eine Map mit der Kundennummer als Schlüssel und dem Kundenobjekt als Wert aus. Die Map besitzt schon Methoden um zu Überprüfen ob ein bestimmter Key, in deinem Fall die Kundennummer, schon vorhanden ist.

  • Autor

ok Math.random(), für die zufallszahlen und dann meiner liste hinzufügen und wenn schon verhanden ist dann neue randomzahl.... ich glaube das hab ich verstanden aber wie sag ich ihn das diese zahl 5 oder 8 stellig sein soll und nicht eine normale zahl wie 12 oder 14 kommt?

ich glaube das hab ich verstanden aber wie sag ich ihn das diese zahl 5 oder 8 stellig sein soll und nicht eine normale zahl wie 12 oder 14 kommt?

Das erklärt der Link von SynonymOfGod ;)

ok Math.random(), für die zufallszahlen und dann meiner liste hinzufügen und wenn schon verhanden ist dann neue randomzahl.... ich glaube das hab ich verstanden aber wie sag ich ihn das diese zahl 5 oder 8 stellig sein soll und nicht eine normale zahl wie 12 oder 14 kommt?

public static double myRandom(double low, double high) {

		return Math.random() * (high - low) + low;

	}

Wenn du bei mir im Text auf dem Link hinter der Map klickst, bekommst du die Java Dokumentation der HashMap zu sehen.

Wenn du bisher damit noch nicht zu tun hattest, wäre es vielleicht am besten, wenn du dir von Oracle erstmal das Tutorial zu den Collections durchliest. In deinem Fall dann vor allem die Abschnitte über das Map Interface und deren Implementierungen.

Lesson: Introduction to Collections (The Javaâ„¢ Tutorials > Collections)

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.