package filterSort; import java.io.File; import java.io.FileNotFoundException; import java.util.Arrays; import java.util.Scanner; import java.util.*; public class FilterSort { /** * Allocates and returns an integer array twice the size of the one * supplied as a parameter. The first half of the new array will * be a copy of the supplied array and the second half of the new * array will be zeros. * * @param arr the array to be copied * @return array twice the size of arr with its initial * elements copied from arr * @throws NullPointerException if arr is null. */ public static int[] doubleArrayAndCopy(int[] arr) { int len = arr.length; int max = arr.length * 2; int[] copyArr = Arrays.copyOf(arr,max); int length = copyArr.length-1; Arrays.sort(copyArr, 0, length); return copyArr; } public static void main(String[] args) { int[] data = new int[8]; try { File file = new File("data.txt"); Scanner myReader = new Scanner(file); for(int i = 0; myReader.hasNext(); i++) { if(i == data.length - 1) { data = doubleArrayAndCopy(data); }else { if(myReader.hasNextInt()) { data[i] = myReader.nextInt(); System.out.println(data[i]); }else { myReader.next(); } } } } catch (FileNotFoundException e) { System.out.println("File not found"); } } } My Arrays.sort(copyArr, 0, length); is not working.
package filterSort;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Arrays;
import java.util.Scanner;
import java.util.*;
public class FilterSort {
/**
* Allocates and returns an integer array twice the size of the one
* supplied as a parameter. The first half of the new array will
* be a copy of the supplied array and the second half of the new
* array will be zeros.
*
* @param arr the array to be copied
* @return array twice the size of <tt>arr</tt> with its initial
* elements copied from <tt>arr</tt>
* @throws NullPointerException if <tt>arr</tt> is null.
*/
public static int[] doubleArrayAndCopy(int[] arr) {
int len = arr.length;
int max = arr.length * 2;
int[] copyArr = Arrays.copyOf(arr,max);
int length = copyArr.length-1;
Arrays.sort(copyArr, 0, length);
return copyArr;
}
public static void main(String[] args) {
int[] data = new int[8];
try {
File file = new File("data.txt");
Scanner myReader = new Scanner(file);
for(int i = 0; myReader.hasNext(); i++) {
if(i == data.length - 1) {
data = doubleArrayAndCopy(data);
}else {
if(myReader.hasNextInt()) {
data[i] = myReader.nextInt();
System.out.println(data[i]);
}else {
myReader.next();
}
}
}
} catch (FileNotFoundException e) {
System.out.println("File not found");
}
}
}
My Arrays.sort(copyArr, 0, length); is not working.
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images