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.

Auf String prüfen

Empfohlene Antworten

Veröffentlicht

Hallo und Guten Morgen!

Hab da nochmal ne kleine Frage:

Also mein Array ist als Student deklariert, und ich möchte gerne den Inhalt von einem Feld auf einen String (leerzeichen oder auch die ersten drei Anfangsbuchstaben oder so).

mit myArray == " ";

geht es ja nicht weil sich die Typen nicht mögen, geht es irgend wie anders?

danke schön

Hey,

Strings prüft man mit der Methode equals() auf Gleichheit.

Allerdings würd es helfen, wenn Du etwas mehr zu Deinem Problem schreiben würdest, hier weiss z.B. keiner, was bei Dir ein "Student" ist. ;)

Grüsse,

ET

Servus,

also Deine Frage ist ziemlich schwammig, deswegen gibt es auch eine schwammige Antwort.

Wenn Du wissen willst, welchen Typ ein Objekt im Array hat, dann sagst Du


if(arr[0] indexof String)
{
// ist ein String
}
else
{
// ist kein String
}
[/PHP]

Wenn Du ein Objekt auf einen String casten willst, schreibst Du

[PHP]
String bla = (String) arr[0];

Wenn es das nicht ist, dann wirst Du Deine Frage etwas umformulieren müssen.

Peter

Original geschrieben von kingofbrain


if(arr[0] indexof String)
{
// ist ein String
}
else
{
// ist kein String
}
[/PHP]

[/b]

Kleiner Fehler: instanceof anstatt indexof.

Wenn ich das richtig verstanden habe, dann sollte er so testen, ob ein Leerzeichen steht:

arr[0].equals("") oder

arr[0].length==0

Servus,

klar, mein Fehler. instanceof ist richtig.

Peter

master, du hast die sache erfasst...

naja ich brauch das zum einen um zu prüfen ob ein idiot nur ein leerzeichen oder einfach garnichts gespeichert hat.

das funktioniert jetzt, aber wenn ich jetzt nach was ganz bestimmten suchen will nicht, also

mein Array (objekt der Klasse Student)

die Klasse Student hat 5 attribute

Name

Geschlecht

Matrikelnummer

Alter

und Studienfach

jetzt will ich nur die Matrikelnummer prüfen.

nach meiner logik hab ich das so gemacht:

if (studentArray.getMatrikel() == suchtext)

{

....

}

aber wie gesagt das haut nciht hin...

kann ich die geschichte mit : arr[0].equals("") noch spezifizieren???

danke nochmal...

if (studentArray.getMatrikel() == suchtext)

{

....

}

das funktioniert nur, wenn beide Objekte vom Typ int sind. String kann man so nicht vergleichen, das macht man mit

if (studentArray.getMatrikel().equals(suchtext)) {

}

Original geschrieben von Vafe

if (studentArray.getMatrikel() == suchtext)

{

....

}

Wie ETnachHause schon sagte, kann man in Java Strings (leider) nicht mit dem Gleichheitsoperator überprüfen (dies ist nur bei nativen Datentypen: int, float möglich) sondern mit der Methode equals.

Wenn getMatrikel() einen String zurück gibt, dann könnte man es so schreiben:

if(studentArray.getMatrikel().equals(suchtext){

}

vieeeelen Dank!

ihr habt mir den ganzen tag soooo schön weiter geholfen, jetzt hab ich noch eine letzte fage ;-)

ich möchte ganz gerne den inhalt meines arrays in eine txt-datei schreiben und zwar einen index immer in eine zeile:

in array[0] steht: NameGeschlechtMatrikelnummerAlterFach

soll im der Datei so aussehen:

Name Geschlecht Matrikelnummer Alter Fach

ich weiß bis jetzt (so ungefär, bin ja blutige anfängerin) wie man eine txt-datei lesen kann, aber wie schreib ich rein...

hab FileWriter gefunden, nur weiß ich nicht wie ich das benutze, z.B wie mit welcher methode ich den inhalt übergebe, u.s.w.

danke nochmal

Ich bin jetzt nicht 100%ig sicher, ob ich weiß was du meinst, aber hier mein Versuch:


Writer writer = new FileWriter("filename.txt");
for(int i = 0;studentenArray[i];i++){
Student std = studentenArray[i];
StringBuffer buf = new StringBuffer();
buf.append(std.getName());
buf.append(" ");
buf.append(std.getGeschlecht());
buf.append(" ");
buf.append(std.getMatrikelnummer());
buf.append(" ");
buf.append(std.getAlter());
buf.append(" ");
buf.append(std.getFach());
buf.append(System.getProperty("line.seperator"));
writer.write(buf.toString());
}
writer.close();
[/PHP]

Original geschrieben von themaster


for(int i = 0;studentenArray[i];i++){

}
[/PHP]

[/b]

Würde mich wundern wenn das geht. :D

[PHP]
for(int i = 0;i<studentenArray.length;i++){

}

Gruß Jaraz

supi

das hat geklappt,

und löschen ? *gucklieb*

ich schau in der zwischenzeit auch immer selber nach klassen, nur meist steige ich da nicht gleich durch und es dauert ne ewigkeit bis ich die tausend errors abgearbeitet hab...

Was willst du löschen?

Die Datei?

Einen Studenteneintrag?

hab schon, war ne überflüssige frage...

ich lösche einen studenten, also einen eintrag....

aber da bin ich dann doch alleine mit meinem superhirn drauf gekommen ;-)

so ich hab dann auch gleich feierabend, noch eine kurze frage:

er hängt mir in der datei hinter dem Fach ein null an...

wie krich ich das wech?

Ich sollte auch Feierabend machen, schreibe ja nur noch Mist:

Noch ein Fehler in meinem Codelisting:

Es muß line.sepa rator heißen und nicht line.sepe rator.

Weil er seperator nicht findet, wird null angefügt, es sollte aber ein Zeilenumbruch sein.

Grüße

themaster

Danke du bist ein Schatz !

So mal schaun vielleicht morgen weiter ;-)

schönen abend noch!!

->Thread geteilt, da das ganze nichts mehr mit der Ursprungsfrage zu tun hatte.<-

Bitte bei neuen Problemen neuen Thread mit passendem Titel öffnen, damit spätere User sowas auch über die Suche finden.

Danke!

Gruß Jaraz

Hier ist der Rest vom Thread:

http://fachinformatiker-world.de/forums/showthread.php?s=&threadid=50245

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.