2016-02-29 8 views
6

Wie kann ich ein temporäres Array in Java zurückgeben (um Codezeile zu speichern, ohne eine Variable zu erstellen).Wie ein temporäres int-Array in Java zurückgegeben wird

Wenn Initiation tun, kann ich

int[] ret = {0,1}; 

verwenden Während bei der Rückkehr zu machen, ich nicht

return {0,1}; 

ich etwas verpassen Sie verwenden können, oder gibt es eine Kraft typ Guss, dies zu tun? Ich habe die Idee new int[] als Antworten zu verwenden. Während, warum brauchen wir nicht new int[] bei der Initiation?

+0

Weitere Informationen finden Sie in der [Java-Sprachspezifikation] (https://docs.oracle.com/javase/specs/jls/se7/html/jls-10.html). –

+2

Sie müssen die Antwort nicht in Ihre Frage schreiben. Akzeptiere einfach die Antwort, die deine Frage gelöst hat, das ist alles. – Tom

Antwort

6

bekam ich die Idee, neue int zu verwenden [] wie die unten Antworten. Was ist der Grund, warum wir bei der Initiation kein neues int [] brauchen?

Wenn Sie int[] ret = {0,1}; schreiben, ist es im Wesentlichen eine Abkürzung des Schreibens int[] ret = new int[]{0,1};. Vom doc:

Alternativ können Sie die Verknüpfung Syntax verwenden, um ein Array zu erstellen und initialisieren:

int[] anArray = { 
    100, 200, 300, 
    400, 500, 600, 
    700, 800, 900, 1000 
}; 

Nun, wenn Sie nach Ihrer Rückkehr müssen return new int[]{0,1}; explizit schreiben, weil Sie nicht tun Zuweisungsoperation (erstellen und initialisieren wie im Dokument) für das Array und daher können Sie die Verknüpfung nicht verwenden. Sie müssen ein Objekt mit new erstellen.

+0

Danke für Ihre ausführliche Antwort! – newbieSOF

+0

Ich bin froh, dass es geholfen hat. – Atri

3

Sie ebenfalls etwas tun kann,

return new int[]{1,2,3}; 
8

Sie können als etwas bekannt machen ein anonymes Array Rückkehr (wie es keinen Namen hat).

Do

return new int[] {0, 1};

für das ...

5
public int [] return check(){ 
     return new int[] {5,8,3,6,4}; 
    } 
Verwandte Themen