Prüfen ob Teil eines Arrays belegt ist, oder nicht
muenzchen
- java
0 Axel Richter0 moejoe0 MudGuard
Hallo!
Ich habe ein Array in das bis zu 4 chars geschrieben werden sollen.
Jetzt kann es aber mal vorkommen, dass mal ein Platz nicht belegt wird. Bei der Abfrage gibt das eine Fehlermeldung, wenn er auf einen leeren Platz stösst.
Wie kann ich abfragen, ob ein bestimmter Platz im Array leer ist bzw. überhaupt existiert?
Hallo,
Ich habe ein Array in das bis zu 4 chars geschrieben werden sollen.
Jetzt kann es aber mal vorkommen, dass mal ein Platz nicht belegt wird. Bei der Abfrage gibt das eine Fehlermeldung, wenn er auf einen leeren Platz stösst.
Das hört sich nach einem dynamischen "Array" an. Die Klasse java.util.Vector kann sowas.
http://next1.rhrz.uni-bonn.de/jkurs/JAVA/html/k100087.html#abschnittvector
beschreibt das ganz gut.
Gruß
Axel
Ich habe ein Array in das bis zu 4 chars geschrieben werden sollen.
Jetzt kann es aber mal vorkommen, dass mal ein Platz nicht belegt wird. Bei der Abfrage gibt das eine Fehlermeldung, wenn er auf einen leeren Platz stösst.
Wie kann ich abfragen, ob ein bestimmter Platz im Array leer ist bzw. überhaupt existiert?
hallo,
ich habs jetzt so verstanden, dass du ein array der länge 4 hast, aber nicht immer alle felder gefüllt sind.
<script language="JavaScript">
var a;
var db=new Array(3);
for(a=0;a<2;a++){
db[a]=new Array(3);
}
db[0]=["sdf",""]
db[1]=["sdfsf","23500"]
db[2]=["sdfsd","55000"]
function ifnull(){
if((db[0][1]) == ""){
alert('is leer');}
}
</script>
damit könnte man dann auch einfachste weise prüfen, ob ein feld belegt ist, oder nicht.
Hallo,
<script language="JavaScript">
Es geht tatsächlich um Java, nicht JavaScript.
@muenzchen: Vielleicht solltest du immer dazuschreiben, daß es um Java
geht, und du weißt, wo der Unterschied zwischen Java und JS liegt. :-)
Gruß
Slyh
Es geht tatsächlich um Java, nicht JavaScript.
oha, tatsächlich verplant..
in java gibts ja 'null'(nix)
dann kannst du mit
if(db[a][b])==null)
prüfen ob etwas an einer bestimmten stelle im array steht, oder nicht.
Hi,
Hallo!
Ich habe ein Array in das bis zu 4 chars geschrieben werden sollen.
Jetzt kann es aber mal vorkommen, dass mal ein Platz nicht belegt wird. Bei der Abfrage gibt das eine Fehlermeldung, wenn er auf einen leeren Platz stösst.
Wie kann ich abfragen, ob ein bestimmter Platz im Array leer ist bzw. überhaupt existiert?
Ob der Index i überhaupt existiert:
dafür hat das Array die Eigenschaft length (oder wars ne Methode? Ist ja in Java leider sehr uneinheitlich, mal ist es length, mal length(), mal getLength(), mal size, mal getSize() - ich kann mir das nicht merken, welches Objekt welche Variante benutzt)
also
if (deinArray.length > i) //length = höchster Index + 1 *)
{
//Index i ist existent
}
Ob das Element bei index i existiert (falls index i überhaupt vorhanden ist):
if (deinArray[i] != null)
{
//arrayElement existiert!
}
*) oder deinArray.length() oder deinArray.getLength() oder ...
cu,
Andreas
also
if (deinArray.length > i) //length = höchster Index + 1 *)
{
//Index i ist existent
}Ob das Element bei index i existiert (falls index i überhaupt vorhanden ist):
if (deinArray[i] != null)
{
//arrayElement existiert!
}*) oder deinArray.length() oder deinArray.getLength() oder ...
cu,
Andreas
Mit deinArray.length bekomme ich zwar den höchsten Index, aber da man bei Java ja die größe vorher definieren muss bringt das ja nicht viel, oder?
Da in dem Array nur chars stehen, musste ich ihn auch als char definieren und das ergibt eine Fehlermeldung, wenn ich abfrage ob das null ist.
Hallo,
Da in dem Array nur chars stehen, musste ich ihn auch als char definieren und das ergibt eine Fehlermeldung, wenn ich abfrage ob das null ist.
Ein Array der nur chars enthält, hat keine leeren Elemente.
Wenn Du einem Element nicht explizit einen Wert zugewiesen hast, hat es den Wert 0
Grüße
Daniel