The ArrayTest2 class:
Using methods
Here is a program that uses methods to solve Problem 1
of the Review for Exam 2:
// ArrayTest2.java: Review question 1, about simple arrays of int
// Answers using separate methods
public class ArrayTest2 {
// Review part 1.a.
int[] grades = {58, 92, 86, 75, 48, 79, 67};
// Review part 1.a., second array
int[] grades2 = {17, 47, 23, 89, 12, 76, 55, 61};
// Review part 1.b.
public int[] add3(int[] a) {
int[] b = new int[a.length];
for (int i = 0; i < a.length; i++)
b[i] = a[i] + 3;
return b;
}
// Review part 1.c.
public int[] square(int[] a) {
int[] b = new int[a.length];
for (int i = 0; i < a.length; i++)
b[i] = a[i]*a[i];
return b;
}
// Review part 1.d.
public int largestValue(int[] a) {
int largest = a[0];
for (int i = 1; i < a.length; i++)
if (a[i] > largest) largest = a[i];
return largest;
}
// Review part 1.e.
public int largestIndex(int[] a) {
int indexLargest = 0;
for (int i = 1; i < a.length; i++)
if (a[i] > a[indexLargest]) indexLargest = i;
return indexLargest;
}
public void testMethods() {
printArray("Array \"grades\" ", grades);
printArray("Array \"grades2\" ", grades2);
int[] resultArr;
int resultInt;
int result2;
resultArr = add3(grades);
printArray("Part 1.b., add 3", resultArr);
resultArr = add3(grades2);
printArray("Part 1.b., add 3", resultArr);
resultArr = square(grades);
printArray("Part 1.c., square", resultArr);
resultArr = square(grades2);
printArray("Part 1.c., square", resultArr);
resultInt = largestValue(grades);
System.out.println("Part 1.d.: Largest grade: " + resultInt);
resultInt = largestValue(grades2);
System.out.println("Part 1.d.: Largest grade: " + resultInt);
resultInt = largestIndex(grades);
System.out.println("Part 1.e.: Index of largest grade: " + resultInt);
resultInt = largestIndex(grades2);
System.out.println("Part 1.e.: Index of largest grade: " + resultInt);
}
private static void printArray(String heading, int[] g) {
System.out.print(heading + ": ");
for (int i = 0; i < g.length; i++)
System.out.print(g[i] + " ");
System.out.println();
}
}
// ArrayTest2Main.java: Invoke StringTest2
public class ArrayTest2Main {
public static void main (String[] args) {
ArrayTest2 arrayTest2 = new ArrayTest2();
arrayTest2.testMethods();
}
}
/* Output:
Array "grades" : 58 92 86 75 48 79 67
Array "grades2" : 17 47 23 89 12 76 55 61
Part 1.b., add 3: 61 95 89 78 51 82 70
Part 1.b., add 3: 20 50 26 92 15 79 58 64
Part 1.c., square: 3364 8464 7396 5625 2304 6241 4489
Part 1.c., square: 289 2209 529 7921 144 5776 3025 3721
Part 1.d.: Largest grade: 92
Part 1.d.: Largest grade: 89
Part 1.e.: Index of largest grade: 1
Part 1.e.: Index of largest grade: 3
*/
Revision date: 2003-11-11.
(Please use ISO
8601, the International Standard.)