Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/10/2014, 12:53
Avatar de Xerelo
Xerelo
 
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: meter array predefinido como valor en función

Cita:
Iniciado por Kritik Ver Mensaje
y recuerda que este objeto que recives es un objeto distinto que se tratará como objeto local, y que almacenará todos los datos que le hayas enviado (en este caso almacenará todos los datos del arraylist que le hayas mandado... pero tienes que saber que todos los métodos almacenan sus datos encapsulados, y al terminar el método todos estos desaparecen.

Código:
public class test {
	public static void main(String[] args) {
		int num1=1;
		testIncremento test=new testIncremento(num1);
		System.out.println(test.getIncremento(num1));
	}
}
public class testIncremento {
	testIncremento(int num1){
		incrementar(num1);
	}
	int getIncremento(int num1){
		return num1;
	}
	public void incrementar (int num1){
		int num2=1;
		num1=num1+num2;//<--Este num1 es distinto al otro num1. Lo que recibe es el valor del objeto int, no el objeto.
	}
}
Ojo que lo que estás diciendo no es correcto.

Los objetos que se pasan como parámetro SÍ son los mismos (en realidad se pasa como valor de referencia), por lo que cualquier cambio que se le haga dentro de un método se mantendrá fuera de ese método.

En el caso de las primitivas no sucede eso, los cambios dentro de un método sólo existen en el método, que es lo que muestras en tu ejemplo, pero una primitiva NO es un objeto.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.