Methodenaufruf auf der Insel

Status
Nicht offen für weitere Antworten.

MQue

Top Contributor
Hallo,

ich hätte eine Fragen zu einem Methodenaufruf und zwar gehe ich grad "Java ist auch eine Insel" durch und bin auf Seite 204 auf den Ausdruck:

productAndSum(9,3)[1] als Methodenaufruf gestoßen. Der Kopf der Methode lautet:
static int[] productAndSum( int a, int b) {...}
Was hat das zu bedeuten?
lg und Danke für etwaiige Antworten.

Michl
 
static int[] productAndSum( int a, int b) {...}
static bedeutet diese Methode ist statisch. Sie kann auch aufgerufen werden ohne, dass ein Objekt der Klasse in der die Methode steht erzeugt werden muß.

int[] ist der Rückgabewert. In dem Fall liefert die Methode ein Array mit integer Werten zurück.
produktAndSum ist der Name der Methode*
(int a, int b) bedeutet, dass 2 integer Werte erwartet werden.

Die [1] gehört nicht zum Methodenaufruf sondern könnte ein Zeichen dafür sein, dass weiter unten noch etwas erklärt wird.

* Java ist eine "sprechende Sprache". Dh man kann anhand der Namen bereits ungefähr erahnen was dahintersteckt. Hier würde ich sagen werden zwei Ganzzahlen addiert und multipliziert und beide Ergebnisse in einem Feld zurückgegeben.)

Hab leider das Buch nicht da. Aber Online gibts das ja auch. Da wird das alles erklärt:
http://www.galileocomputing.de/open...02_007.htm#mj3ec6501a9a3e4f640f5552529b72df6b
 
Ja, das mit den MethodenAufrufen (Klassenmethoden oder Instanzmethoden) ist mir schon klar aber das [ 1 ] verwirrt mich ein bisschen,

es steht auch unten nichts, das [ 1 ] muss irgendeinen anderen Nutzen haben?
"Java ist auch eine Insel" verwendet al Notiz eine hochgestellte Zahl, [ 1 ] steht aber so richtig am Boden
 
Hi,

Du redest von diesem Beispiel?

Nun, die Methode wurde ja erklärt. Es wurde gesagt, das ein Array als Rückgabewert zurück gegeben wird. Wenn man nun das zweite Element in einem Array haben will, macht man dies mit arrName[1].

Man kann das ja auch zerlegen:

Code:
int [] arr = productAndSum(9, 3); 
System.out.println( arr[1] );

Man sparrt sich eben die Variable, da man den Wert in dem Fall gleich ausgeben will.

Micha
 
Ah, danke,

diese Schreibweise war mir nicht klar aber jetzt versteh ichs

lg und danke


Ein Ausdruck ist mir noch nicht ganz klar und zwar:


Code:
static <T> void sort(T[] a, Comparator<? super T> c)   // Was bedeuten da die einzelnen Dinger, vor allen das <T> (wird wohl ein Generic sein aber für was
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben