Object Arrays

Answer the following questions about each section of code.

 int a [] = new int [4];
   Card b [] = new Card [4];
   for (int i = 0 ; i < 4 ; i++)
   {
   b [i] = new Card ();
   }
   a [0] = 1;
   a [1] = 2;
   a [2] = 3;
   a [3] = 4;
   b [0].value = 2;
   b [0].suit = "Heart";
   b [1].value = 3;
   b [1].suit = "Heart";
   b [2].value = 4;
   b [2].suit = "Heart";
   b [3].value = 5;
   b [3].suit = "Heart";

1. How do you declare an int array of 4 elements?

2. How do you declare a Card array of 4 elements?

3. How do you new each element in a Card array of 4 elements?

4. What would the Card object look like? Write the code to make it.

5. Draw both arrays, a and b at this point.

for (int i = 0 ; i < 4 ; i++)
   {
   System.out.print (a [i] + " ");
   }
   System.out.println ();

for (int i = 0 ; i < 4 ; i++)
   {
   System.out.print (b [i].value + " ");
   System.out.print (b [i].suit + " ");
   }
   System.out.println ();

6. What do the two above loops do? (a comment to go before them)

7. Write out what the above loops would print on the screen.

 public static int avg (int a [], int size)
   {
   int sum = 0;
   for (int i = 0 ; i < size ; i++)
   {
   sum += a [i];
   }
   return sum / size;
   }
   public static int avg (Card a [], int size)
   {
   int sum = 0;
   for (int i = 0 ; i < size ; i++)
   {
   sum += a [i].value;
   }
   return sum / size;
   }

8. How would you call each of the above methods?

9. What would each method print on the screen?

 Card c [] [] = new Card [3] [2];
   for (int i = 0 ; i < 3 ; i++)
   {
   for (int j = 0 ; j < 2 ; j++)
   {
   c [i] [j] = new Card ();
   }
   }
   c [0][0].value = 2;
   c [0][0].suit = "Heart";
   c [0][1].value = 3;
   c [0][1].suit = "Heart";
   c [1][0].value = 4;
   c [1][0].suit = "Heart";
   c [1][1].value = 5;
   c [1][1].suit = "Heart";
   c [2][0].value = 6;
   c [2][0].suit = "Heart";
   c [2][1].value = 7;
   c [2][1].suit = "Heart";
 for (int i = 0 ; i < 3 ; i++)
   {
   for (int j = 0 ; j < 2 ; j++)
   {
   System.out.print (c [i] [j].value + " ");
   System.out.print (c [i] [j].suit + " ");
   }
   System.out.println ();
   }

10. How is c different from b? How is it the same? (Come up with two similarities and two differences).