objetos se pasan por referencia por defecto
Los objetos son visitada por referencia, pero no hay manera de crear una referencia a un valor simple (byte, short, int, long). Debe crear un objeto para envolver el entero o usar una única matriz de elementos.
public void sum(int[] i){
i[0] = ...;
}
o
public void sum(MyInt i){
i.value = ...;
}
public class MyInt{
public int value;
}
por su ejemplo podría funcionar algo como lo siguiente
public int sum(int v){
return ...;
}
o
public int sum(){
return ...;
}
Actualización:
adicional Mejor Descripción/de referencias a objetos:
objetos Java siempre se accede por una referencia. Al igual que los tipos primitivos, esta referencia se pasa por valor (por ejemplo, copiada). Como todo lo que un programador puede acceder en java se pasa copiándolo (referencias, primitivas) y no hay forma de crear una referencia a un tipo primitivo, cualquier modificación de un parámetro de método (referencias, primitivas) solo afecta la copia local dentro del método. Los objetos se pueden modificar dentro de un método dado que ambas copias de la referencia (local y otra) aún apuntan a la misma instancia de objeto.
ejemplo:
modificar una primitiva dentro de método, esto sólo afecta a la copia interna de i y no el valor pasado.
void primitive(int i){
i = 0;
}
Modificar una referencia dentro del método, esto solo afecta a la copia interna de ref y no al valor pasado.
void reference(Object ref){
ref = new Object();//points to new Object() only within this method
}
modificar un objeto, visible a nivel mundial
void object(List l){
l.add(new Object());//modifies the object instead of the reference
}
Tanto la matriz y myInt anteriores se basan en la modificación de un objeto.
@skaffman: Es por eso que tenemos poderes de moderador, supongo. – Esko
@Esko, excepto que no debe editar las publicaciones únicamente para realizar correcciones estéticas menores (como corregir un error tipográfico). Me resulta deprimente que @skaffman publicó su comentario en ese "tono" y que 6 personas más lo votaron como útil. –
@Tim: De hecho, recuerdo haber leído todo lo contrario de lo que acaba de decir en el blog oficial y meta varias veces. Tal como lo veo, la corrección de los errores tipográficos y la gramática está respaldada, ya que a veces hace que la comprensión de la pregunta en sí sea mucho más fácil para los demás. – Esko