2012-02-17 12 views
28

¿Hay alguna forma en Java de devolver una nueva matriz sin asignarla primero a una variable? Aquí se muestra un ejemplo:Devolución de una matriz sin asignar a una variable

public class Data { 
    private int a; 
    private int b; 
    private int c; 
    private int d; 
    public int[] getData() { 
     int[] data = {a,b,c,d}; 
     return data; 
    } 
} 

que quiero hacer algo como esto, pero no funciona:

public int[] getData() { 
    return {a,b,c,d}; 
} 

Respuesta

55

Todavía es necesario para crear la matriz, incluso si no se asigna a una variable . Prueba esto:

public int[] getData() { 
    return new int[] {a,b,c,d}; 
} 

Su ejemplo de código no funcionó porque el compilador, por un lado, todavía necesita saber qué tipo usted está tratando de crear a través de la inicialización estática {}.

+0

Gracias, muy informativo –

0
return new Integer[] {a,b,c,d}; // or 
return new int[] {a,b,c,d}; 
1
public int[] getData() { 
    return new int[]{a,b,c,d}; 
} 
1

¿Ha estado para construir el objeto de que la función está regresando, el siguiente debería resolver su problema.

public int[] getData() { 
    return new int[]{a,b,c,d}; 
} 

esperanza esto ayuda

Cuestiones relacionadas