class ArrayBsp2
{ static int[] a;
  static int[] b;
  static int zahl = 15;

  static void feldAusgabe(int[] feld)
  { for (int i=0; i<feld.length; i++) { Out.print(feld[i] + " "); }
    Out.println();
  } // feldAusgabe

  static void feldAenderung(int[] feld)
  {  feld[2] = 21; }

  static void zahlAenderung(int wert)
  {  wert = 21; }

  public static void main(String[] arg)
  {
    // Out.println ("b[0] = " + b[0]); --> NullPointerException
    a = new int[3]; // a[0] = 0; a[1] = 0; a[2] = 0; automatisch
    Out.print ("Feld a: ");
    feldAusgabe(a);
    b = a; // kein Fehler
    Out.print ("Feld b: ");
    feldAusgabe(b);
    a[0] = 17;
    Out.print ("Feld a: ");
    feldAusgabe(a);
    Out.print ("Feld b: ");
    feldAusgabe(b);
    Out.println("Feldveraenderung in Methode");
    feldAenderung(a);
    Out.print ("Feld a: ");
    feldAusgabe(a);
    Out.print ("Feld b: ");
    feldAusgabe(b);
    b = null;
    // Out.println("b[0] = " + b[0]); --> NullPointerException
    Out.println("Zahl = " + zahl);
    zahlAenderung(zahl);
    Out.println("Zahlveraenderung in Methode");
    Out.println("Zahl = " + zahl);
  } // main
} // class ArrayBsp2

/* Ausgabe des Programmes
Feld a: 0 0 0
Feld b: 0 0 0
Feld a: 17 0 0
Feld b: 17 0 0
Feldveraenderung in Methode
Feld a: 17 0 21
Feld b: 17 0 21
Zahl = 15
Zahlveraenderung in Methode
Zahl = 15
*/
