1. Engineering
  2. Computer Science
  3. the language is java 1 create a class called arrayreview...

Question: the language is java 1 create a class called arrayreview...

Question details

The language is Java.

1. Create a class called ArrayReview with one data field of an integer array. (2 points)
2. Add a constructor to populate the array in the class using Java random number generator, and a
setter/getter for the array, and toString(). The array length is passed to the constructor. (3
points)
3. Add the following methods to the class and use them in the main method: (5 points)
a. setKthItem(k, item) that set the kth element of the array to the value given in “item”.
b. pickMaxIndex(arr, start, end) that returns the index of the largest value of the array
from index start to index end.
c. Swap(arr, index-i, index-j) that swaps the value in index I with the value in index j.
d. selectionSort() that sorts the array in descending order, i.e. the largest one comes first
4. Popular a two-dimension array from an input file of 5 rows and 10 columns, sort each row and
sort each column, then print out the data to an output file. (5 points)
5. Create a main method to print the integer array after sorted using for-each state without using
indexes.
(5 points)

Here is what I have, Is it correct?

import java.util.Arrays;
import java.util.Random;

public class ArrayReview {

private int[] array;

public ArrayReview(int length)
{
Random r = new Random(100);
array = new int[length];
for(int i =0 ;i<length;i++)
{
array[i] = r.nextInt();
}
  
}

@Override
public String toString() {
return "ArrayReview [array=" + Arrays.toString(array) + "]";
}

public int[] getArray() {
return array;
}

public void setArray(int[] array) {
this.array = array;
}
public void setKthItem(int k, int item)
{
array[k] = item;
}
public int pickMaxIndex( int start, int end)
{
int max = array[start];
for(int i = start + 1 ;i< end ;i++)
{
if(array[i] >= max)
max = array[i];
  
}
return max;
}
public void swap(int i , int j)
{
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
public void selectSort()
{
int max;int pos;
for(int i = 0;i<array.length-1;i++)
{
max = array[i];pos=i;
for(int j = i+1;j<array.length;j++)
{
if(array[j]>max)
{
max = array[j];
pos = j;
}
}
swap(i,pos);
  
}
}
public void printArray()
{
for(int value:array)
System.out.println(value+ " ");
}
}

Solution by an expert tutor
Blurred Solution
This question has been solved
Subscribe to see this solution