Paso de parámetros

Contactar con el profesor

  • Por referencia: cuando paso la dirección del dato.
  • Por valor: cuando paso el dato.

En Java se pasa siempre por valor, pero:

  • cuando paso un objeto, paso una dirección de memoria.
  • cuando paso una primitiva, paso directamente su valor.

public class PasoParametros {
    public static void modificaLetra(char letraParam) {
        letraParam = 'A';
    }
    public static void modificaStringBuffer(StringBuffer stringBufferParam) {
        stringBufferParam.append("C");
    }
    public static void modificaLetras(char[] letrasParam) {
        letrasParam[0] = 'A';
    }
    public static void modificaPalabras(String[] palabrasParam) {
        palabrasParam[0] = "B";
    }
    public static void modificaString(String stringParam) {
        stringParam = "B";
    }
    public static void main(String[] args) {
        char letra = 'a';
        StringBuffer stringBuffer = new StringBuffer("c");
        char[] letras = {'a'};
        String[]palabras = {"b"};
        String string = "b";

        modificaLetra(letra);
        modificaStringBuffer(stringBuffer);
        modificaLetras(letras);
        modificaPalabras(palabras);
        modificaString(string);

        System.out.println("La nueva letra vale: " + letra);
        System.out.println("El nuevo stringBuffer vale: " + stringBuffer);
        System.out.println("El nuevo letras vale: " + letras[0]);
        System.out.println("El nuevo palabras vale: " + palabras[0]);
       
        System.out.println("El nuevo String vale: " + string);
    }
}

Output:
La nueva letra vale: a
El nuevo stringBuffer vale: cC
El nuevo letras vale: A
El nuevo palabras vale: B
El nuevo String vale: b

diagrama ejercicio Java
Ver preguntas
← Colección de ejercicios
Modificador static →

Aviso Legal | Política de privacidad