Array as parameter for function

  • Antworten:4
M. Neumann
  • Forum-Beiträge: 14

30.09.2012, 21:35:03 via Website

Edit: Ich war durch das Programmieren so im Englisch-Fieber, dass ich gleich englisch gepostet habe. Nochmal kurz auf Deutsch das wichtigste:
Der unten gepostete Code funktioniert nur, wenn ich statt einem Event-Array ein einzelnes Event übergebe.
Nun wüßte ich gerne woran das liegt und wie ich das zum laufen bekomme :)
Danke schonmal


Hey,

I have a problem with some code...

I tried this:

[code]
...
Event[] test = null;
test[0]=new Event("test","123");
test[1]=new Event("test2","456");
showEvents(test, text);
...
public void showEvents(Event[] events, TextView text) {
for(int i =0; i < events.length ; i++) {
text.append(events[i].getName()+"\n"+events[i].getDesc()+"\n\n");
}
}
[/code]

But the code isn't doing what it should. The Android-device always tells me, that the app unfortunately stopped.

If I use only one Event (not an array of Events), it works fine. Isn't an array of objects also call-by-reference in Java? Or is there an other problem?

Thanks

— geändert am 30.09.2012, 21:47:14

Antworten
San Blarnoi
  • Forum-Beiträge: 2.545

30.09.2012, 23:08:44 via Website

Event[] test = null;
test[0]=new Event("test","123");
test[1]=new Event("test2","456");

Daran fällt dir jetzt wirklich nichts auf?
Wo ist denn null[0]? :-P

Antworten
M. Neumann
  • Forum-Beiträge: 14

30.09.2012, 23:43:23 via Website

Dieser teil kommt mir sowieso spanisch vor. Kenne das von php nicht so ("=null" dahinter)
Wie ist es denn nun richtig? Ich verstehe es nicht...

Das =null wollte netbeans unbedingt dahinter haben
Bin normal php-entwickler...kaum java erfahrung

Antworten
San Blarnoi
  • Forum-Beiträge: 2.545

01.10.2012, 00:07:03 via Website

Dann wäre es wohl sinnvoll, dich zunächst mit dem Grundverständnis der Sprache zu befassen, die du als Werkzeug verwenden willst, oder?

Event[] test = new Event[2];

Antworten
M. Neumann
  • Forum-Beiträge: 14

01.10.2012, 20:37:26 via Website

Genau so dachte ich mir das auch, weshalb ich ursprünglich schon extra einen Counter für die Events eingebaut hatte (zum erzeugen der passenden Arraygröße). So meinte ich nämlich auch in Java ein Array zu erzeugen zu müssen...
Aber die Codeschnipsel im Internet zeigten mir anderes (waren aber auch eher Newbie-Postings, die ich in der Hand hatte...)

Jedenfalls vielen, vielen Dank. Ich werde das später umbauen :)

Antworten