Java Reference
In-Depth Information
Self-Test Exercises (continued)
14. Rewrite the class GolfScores from Display 6.4 using the method
differenceArray from Self-Test Exercise 13 .
15. Rewrite the class GolfScores from Display 6.4 making the array of scores a
static variable. Also, make the int variable numberUsed a static variable. Start
with Display 6.4, not with the answer to Self-Test Exercise 14. Hint: All, or at
least most, methods will have no parameters.
EXAMPLE: A Class for Partially Filled Arrays
If you are going to use some array in a disciplined way, such as using the array as a
partially filled array, then it is often best to create a class that has the array as an instance
variable and to have the constructors and methods of the class provide the needed
operations as methods. For example, in Display 6.5, we wrote a class for a partially filled
array of doubles. In Display 6.6, we wrote the program in Display 6.4 using this class.
In Display 6.6, we wrote the code to be exactly analogous to that of Display 6.4
so that you could see how one program mirrors the other. However, this resulted
in occasionally recomputing a value several times. For example, the method
computeAverage contains the following expression three times:
a.getNumberOfElements( )
Because the PartiallyFilledArray a is not changed in this method, these each
return the same value. Some programmers advocate computing this value once only
and saving the value in a variable. These programmers would use something such
as the following for the definition of computeAverage rather than what we used in
Display 6.6 . The variable numberOfElementsIna is used to save a value so it need
not be recomputed.
public static double computeAverage(PartiallyFilledArray a)
{
double total = 0;
double numberOfElementsIna = a.getNumberOfElements();
for ( int index = 0; index < numberOfElementsIna; index++)
total = total + a.getElement(index);
if (numberOfElementsIna > 0)
{
return (total/numberOfElementsIna);
}
else
{
 
Search WWH ::




Custom Search