Noch freie Nummern anzeigen lassen

Status
Nicht offen für weitere Antworten.

Alex_winf01

Top Contributor
Ich habe folgendes Problem:

Ich möchte mir im Zahlenbereich von 0 bis 9999 anzeigen lassen, welche Nummern bereits im System vergeben sind und welche noch frei sind.

Hier mein bisheriger Code:

Code:
String belegte_nummern = "Select nummer from artikel";
Statement st = Login.connection.createStatement();
ResultSet st = st.executeQuery(belegte_nummern);

String[] x = new String[99998];
String[] y = new String[99998];

while (st.next())
{
   for(in j = 0; j < 9998; j++)
  {
      x[i] = st.getString("nummern");
      int k_1 = j + 1;
      String k = Integer.toString(k_1);
      y[j] = k;

      for (int i = 0; i< 9998; i++)
     {
        if (k.quals(x[i])
       {
           y[j] = "";
           return;
       }
     }
  }
}

Leider funktioniert das nicht. Hat jemand eine Idee, wie ich mir die noch freien Nummern anzeigen lassen kann? Wie kann ich gleichzeitig das Array x (welches die bereits vergebenen Nummern aufnimmt) dynamisch gestalten? Kann mir da jemand helfen?
 

ARadauer

Top Contributor
versuch das mal:

Code:
			boolean[] belegt = new boolean[99998];
			while (st.next()){
				int nummer = Integer.parseInt(st.getString("nummern")); 
				belegt[nummer] = true;				
			}
			
			for (int i = 0; i< belegt.length; i++){ 
	      if(!belegt[i])
	      	System.out.println(i +" ist frei");
	    }

nicht getestet.....
 

Marco13

Top Contributor
Hm. Je nachdem, wie das Verhältnis zwischen belegten und nicht belegten Nummern ist, wo die Abfrage aufgerufen wird, ob man wirklich eine Liste braucht oder nur die Information OB sie verwendet ist oder ob NICHT, kann es auch sinnvoll sein, die benutzten Nummern in ein HashSet zu packen (oder die freien - das muss man sich überlegen!). Der Vorteil wäre, dass man nicht festgelegt ist, bei der Frage, um wieviele Nummern es geht (9999 !? :autsch: )
Code:
Set<Integer> benutzt = new HashSet<Integer>(),
benutzt.add(12);
benutzt.add(34);
benutzt.add(123456789);

System.out.println(benutzt.contains(12)); // true
System.out.println(benutzt.contains(1234)); // false
System.out.println(benutzt.contains(123456789)); // true


EDIT: Hey, das ist ja noch schlimmer:
Code:
String[] x = new String[99998];
String[] y = new String[99998];

while (st.next())
{
   for(in j = 0; j < 9998; j++)
  {
Sollte da nicht "j<99998" stehen? (Nein, sollte es nicht: Es sollte x.length bzw. y.length sein!)

Dir ist schon klar, dass diese Arrays (auch wenn sie "leer" sind) einen Haufen Speicherplatz brauchen?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19
ruutaiokwu Welcher Browser unterstützt heutzutage noch Java Applets? Allgemeine Java-Themen 5
berserkerdq2 SceneBuilder GUI erstellt, nun muss ich noch ein Polygon erstellen, ist die Connection möglich? Allgemeine Java-Themen 3
berserkerdq2 Wenn ich bei Intelij javafx mit maven importieren will, muss ich das in die pom.xml reintun, aber warum noch in module-info.java? Allgemeine Java-Themen 3
T JavaPoet - (noch) nicht existente Typen Allgemeine Java-Themen 2
B Lottospielen mit System, Versuch 2, noch umständlicher als vorher Allgemeine Java-Themen 1
berserkerdq2 Wozu schreibe ich 3 und 1 noch hin? Allgemeine Java-Themen 5
S Noch eine Design-Frage zu Setter Allgemeine Java-Themen 6
Bluedaishi Prüfen ob Datei noch geöffnet ist Allgemeine Java-Themen 59
R JDK installieren Gibt es ab 2019 überhaupt noch Java? Allgemeine Java-Themen 6
S Wird bei den JREs 9, 10, 11+ ueberhaupt noch Bytecode ausgefuehrt..? Allgemeine Java-Themen 8
J Could not convert socket to TLS - gestern liefs noch Allgemeine Java-Themen 2
H Wie kann ich überprüfen ob das Feld noch frei ist? Allgemeine Java-Themen 5
M Windows 98 - Mit welchem JDK (Version) kann noch Programm dafür erstellt werden Allgemeine Java-Themen 6
R Seleium / WebDriver findet weder URL noch Title Allgemeine Java-Themen 1
HarleyDavidson Was ist das? Noch nie gesehen... Allgemeine Java-Themen 3
B Input/Output Datei noch geöffnet trotz Close Allgemeine Java-Themen 4
A Noch eine Frage zur Methode matches() Allgemeine Java-Themen 2
J Lebt das Objekt noch?? Allgemeine Java-Themen 12
Loyd Noch ne Regex-Frage: Verschachtelte Ausdrücke Allgemeine Java-Themen 4
I Exceptions - weder catch- noch finally-Klausel funktioniert Allgemeine Java-Themen 12
J Rekursive Methode und if-Blöcke, was wird noch ausgeführt? Allgemeine Java-Themen 2
D Brauche mal Hilfe bin noch nicht so fit Allgemeine Java-Themen 3
Y Mal wieder vergleichen von Strings.[Leider noch ein Problem] Allgemeine Java-Themen 18
S Zeichen, dass Programm noch läuft Allgemeine Java-Themen 3
G Sind Applets noch uptodate Allgemeine Java-Themen 24
G Aufruf einer Methode wenn Klasse noch nicht existiert Allgemeine Java-Themen 3
J Immer noch OpenOffice.org - Malheur Allgemeine Java-Themen 4
A Warum hab ich noch nie ein .jar Archiv gesehen? Allgemeine Java-Themen 5
T Geht das vielleicht noch einfacher? Allgemeine Java-Themen 7
G Java Cryptography Extension (JCE) mit Java 1.6 noch aktuell? Allgemeine Java-Themen 1
P Source code verloren habe nur noch kompilierte .jar. Allgemeine Java-Themen 12
E Nach Packen in Jar ist Sound nur noch abgehackt zu hören Allgemeine Java-Themen 2
F JSP noch aktuell? Allgemeine Java-Themen 5
Ark Noch mal Fourier Allgemeine Java-Themen 2
S Prozess javaw.exe läuft immer noch, obwohl Programm beendet Allgemeine Java-Themen 6
G Was soll noch alles in Java kommen? Allgemeine Java-Themen 14
B Noch einmal Kopierschutz, sorry Allgemeine Java-Themen 7
G nur noch 2 kleinigkeiten dann bin ich glücklich^^ Allgemeine Java-Themen 2
M Kann man hier noch was rausholen? Allgemeine Java-Themen 16
flashfactor Testen ob ein R/3 erreichbar bzw. noch am leben ist. Allgemeine Java-Themen 2
M noch ein rendererversuch Allgemeine Java-Themen 8
D Laufen meine alten progs auf java 5 noch? Allgemeine Java-Themen 7
D Threads wollen weder schlafen noch aufgewckt werden! Allgemeine Java-Themen 6
C Was geht noch? Allgemeine Java-Themen 13
J freie Chart API für java? Allgemeine Java-Themen 2
Z Mit Java 8+ Streams Zeilen nummern zu Zeilen hinzufügen Allgemeine Java-Themen 17

Ähnliche Java Themen

Neue Themen


Oben