# Viele unklarheiten!



## walker23m (15. Aug 2007)

1.Ich habe in einem Array feld zwei strings gespeichert :zb. ("istz", "uo") 

wie frage ich nun ab ob eine string variable in einer methe gleich ist?

mit der equals methode gibt es schwierigkeiten:

String k1, String k2) werden der methode übergeben->
for....

(k1, k2).equals(a_) 
dies geht nicht!!!

hat jemadn eine idee wie es dennoch geht?

2. wie vergleiche ich  eine stelle im array mit dem wert "null" enthält also nix  (nicht die zhal 0!!)
  if (a = null) geht ja auch ned


PS: natürlich jeweils vernüftige forshcleifen davor, aber die stellen kein Problem dar._


----------



## SlaterB (15. Aug 2007)

1.
if (k1.equals(a_) && k2.equals(a)) {

oder

if (k1.equals(a) || k2.equals(a)) {

wenn du dir eine Hilfsoperation 
equalFirstTwoWithThird(String st1, String st2, String st3)
schreibst
dann funktioniert natürlich auch
if (equalFirstTwoWithThird(k1, k2,a)) {

-------

2.
 if (a == null)

ein einfaches = ist eine Zuweisung!_


----------



## walker23m (16. Aug 2007)

3. habe variablen a und b die ich in einer methode e erstelle
sie dann in der methode b weitergeben ( b wird in e ausgeführt) dann die variablen wieder in die nächste methode in einer anderen kalsse weitergeben klasse.z (z wird in b ausgeführt)

geht das dann so:

class uuu{

void e(){
String a = ss[2];
String b = ss[1];
 b(a, b);
}

void b(String a, String b){
klasse.z(a,b);
}

class klasse{

void z ( String a, String b) {
..}

?


----------



## SlaterB (16. Aug 2007)

testen? 
die Parameterweitergabe scheint keine Probleme zu machen

klasse.z(a,b); 
funktioniert natürlich nur bei statischen Operationen


----------



## walker23m (16. Aug 2007)

hae? static vor jeder methode setzen?

warum geht es nicht ohne?


----------



## SlaterB (16. Aug 2007)

weil Java nun mal auf Objekte aufsetzt,
Standard ist, dass Operationen nur an einzelnen Objekten, nicht an den Klassen an sich aufgerufen werden können


----------



## walker23m (17. Aug 2007)

```
for (int i = 0; i < c.length; i++ ) {
 if (name.equals( c[i][0])) {
 System.out.println ("Error!  " + name + " bereits vorhanden");
 } else if (c[i][0] == null ) {
     c [i][0] = new Obj (name);
     break;//????
    }
```

benötigt man in diesem Fall ein break oder geht es ohne?
es soll nur ein feld im array befüllt werden


----------



## SlaterB (18. Aug 2007)

du könntest natürlich noch auf andere Weise tricksen, z.B. i ganz doll erhöhen oder noch eine boolean-Variable finished verwenden, die in der Schleife abgefragt wird,

break ist aber ein passabler Weg, ich sehe das ganz gerne


----------



## walker23m (18. Aug 2007)

also nach deiner ironie zu urteilen ist das was ich da vabriziert habe ein scheiss?


----------



## SlaterB (18. Aug 2007)

da ist keine Ironie, irgendwie musst du die Schleife abbrechen
und jeder Weg ist da etwas zurechtgebogenes


----------



## walker23m (18. Aug 2007)

ok dann weiteres problem:

(a, c) = kreuzungen _[j]

ich will zwei strings in ein array feld rein setzen.
so wie hier zweite zeile ist das ja falsch.
wie geht das dann?_


----------



## SlaterB (18. Aug 2007)

jedes Feld in der Welt der Programmierung hat genau Platz für ein Objekt,
dieses eine Objekt kann natürlich selber ein String[] mit 2 Strings drin sein,

aber bevor du jetzt fragst wie du das machst: ich zumindest werde dir nicht halb Java erklären,
vielleicht erzählt es noch wer anders


----------

