erstellt 16.05.98; übersetzt 24.06.03; © Copyright 2003 Deutsche Übersetzung Heinrich Gailer

Quiz über Arrays als Parameter

Dies ist ein Übungsquiz. Die Ergebnisse werden nirgendwo erfasst und haben keine Auswirkung auf Ihre Note. Die Fragen in diesem Quiz dürfen in keinem Quiz oder Test erscheinen, der für Ihre Benotung zählt.

Hinweise: Wählen Sie für jede Frage die beste Antwort und klicken Sie auf das entsprechende Optionskästchen. Sie können Ihre Antwort jederzeit ändern. Wenn das Quiz bewertet wird, erscheint die richtige Antwort in der Textbox nach jeder Frage.



1. Java verwendet Call-by-Value. Welches ist der Wert, der durch den folgenden Methodenaufruf an routine() übergeben wird?

double[] rats = {1.2, 3.4, 5.6};

routine( rats );
a.    Eine Kopie des Arrays rats.
b.    Den Wert der Elemente von rats.
c.    Eine Referenz auf das Arrayobjekt rats.
d.    1.2

Die korrekte Antwort ist:


2. Mit welchem Parametertyp muss die folgende Methode aufgerufen werden?

int myMethod ( double[] ar )
{
  . . . .
}
a.    Einem leeren double-Array.
b.    Einer Referenz auf ein Array, dass Elemente des Typs double enthält.
c.    Einer Referenz auf ein Array, dass null oder mehr Elemente des Typs int enthält.
d.    Einem Array von beliebiger Länge, dass double enthält und ar genannt werden muss.

Die korrekte Antwort ist:


3. Was macht die folgende Methode?

void spread ( int[] values )
{
  for ( int index = 1 ; index < values.length ; index++  )
    values[index] = values[0];
}
a.    Sie ändert ein Array, indem sie das Element 0 in alle anderen Slots kopiert.
b.    Sie ändert ein Array, indem sie jedem Element den Wert seines Indexes gibt.
c.    Sie ändert ein Array, indem sie jedes Element auf null setzt.
d.    Sie ändert den formalen Parameter, aber ändert nicht das Array des Aufrufers.

Die korrekte Antwort ist:


4. Was macht die folgende Methode?

void blur ( char[] z, String st )
{
  if ( z.length < st.length() ) return;

  for ( int j=0; j < st.length; j++ )
    z[j] = st.charAt( j );

}
a.    Sie ermittelt, ob das Array die gleichen Zeichen wie der String enthält.
b.    Sie kopiert Zeichen vom Array in den String.
c.    Sie erzeugt ein neues Array, das die gleichen Zeichen enthält wie der String.
d.    Wenn es genug Slots in dem Array gibt, kopiert sie die Zeichen eines nach dem anderen vom String in das Array.

Die korrekte Antwort ist:


5. Was ist der Output des folgenden?

class ChangeIt
{
  static void doIt( int[] z )
  {
    z[0] = 0;
  }
}

class TestIt
{
  public static void main ( String[] args )
  {
    int myArray = {1, 2, 3, 4, 5} ;

    ChangeIt.doIt( myArray );

    for (int j=0; j<myArray.length; j++ )
      System.out.print( myArray[j] + " " ) ;
  }
}
a.    1 2 3 4 5
b.    0 1 2 3 4
c.    0 2 3 4 5
d.    2 3 4 5 0

Die korrekte Antwort ist:


6. Was ist der Output des folgenden?

class ChangeIt
{
  static void doIt( int[] z )
  {
    z[0] = z[ z.length-1 ];
  }
}

class TestIt
{
  public static void main ( String[] args )
  {
    int myArray = {1, 2, 3, 4, 5} ;

    ChangeIt.doIt( myArray );

    for (int j=0; j<myArray.length; j++ )
      System.out.print( myArray[j] + " " ) ;
  }
}
a.    1 2 3 4 5
b.    0 2 3 4 5
c.    5 2 3 4 1
d.    5 2 3 4 5

Die korrekte Antwort ist:


7. Was ist der Output des folgenden?

class ChangeIt
{
  static void doIt( int[] z )
  {
    int temp = z[ z.length-1 ] ;
    z[0] = temp;
  }
}

class TestIt
{
  public static void main ( String[] args )
  {
    int myArray = {1, 2, 3, 4, 5} ;

    ChangeIt.doIt( myArray );

    for (int j=0; j<myArray.length; j++ )
      System.out.print( myArray[j] + " " ) ;
  }
}
a.    1 2 3 4 5
b.    0 2 3 4 5
c.    5 2 3 4 1
d.    5 2 3 4 5

Die korrekte Antwort ist:


8. Was ist der Output des folgenden?

class LowHighSwap
{
  static void doIt( int[] z )
  {
    int temp = z[ z.length-1 ] ;
    z[ z.length-1 ] = z[0] ;
    z[0] = temp;
  }
}

class TestIt
{
  public static void main ( String[] args )
  {
    int[] myArray = {1, 2, 3, 4, 5} ;

    LowHighSwap.doIt( myArray );

    for (int j=0; j<myArray.length; j++ )
      System.out.print( myArray[j] + " " ) ;
  }
}
a.    1 2 3 4 5
b.    5 2 3 4 1
c.    1 2 3 4 1
d.    5 2 3 4 5

Die korrekte Antwort ist:


9. Was ist der Output des folgenden?

class ChangeIt
{
  static void doIt( int[] z )
  {
    int[] A = z ;
    A[0] = 99;
  }
}

class TestIt
{
  public static void main ( String[] args )
  {
    int myArray = {1, 2, 3, 4, 5} ;

    ChangeIt.doIt( myArray );

    for (int j=0; j<myArray.length; j++ )
      System.out.print( myArray[j] + " " ) ;
  }
}
a.    1 2 3 4 5
b.    99 2 3 4 5
c.    0 2 3 4 5
d.    99 99 99 99 99

Die korrekte Antwort ist:


10. Was ist der Output des folgenden?

class ChangeIt
{
  static void doIt( int[] z )
  {
    z = null ;
  }
}

class TestIt
{
  public static void main ( String[] args )
  {
    int[] myArray = {1, 2, 3, 4, 5} ;

    ChangeIt.doIt( myArray );

    for (int j=0; j<myArray.length; j++ )
      System.out.print( myArray[j] + " " ) ;
  }
}
a.    1 2 3 4 5
b.    Nothing will be printed.
c.    The program will halt with a run time error.
d.    0 0 0 0 0

Die korrekte Antwort ist:


Richtige Antworten:       in Prozent:       Bewertung:   

Übersicht (Wenn Sie gerade von einer anderen Seite hierher zurückgekommen sind, oder diese Seite neu geladen haben, müssen Sie erneut auf jede Ihrer ausgewählten Antworten klicken, damit das Bewertungsprogramm korrekt arbeitet. Sie möchten vielleicht die "Umschalt"-Taste drücken, während Sie die Seite neu laden, damit die alten Antworten gelöscht werden.