我需要我的程序執行以下操作。Java數組和方法問題
創建一個名爲toString的函數,該函數返回「數組字符串格式」中數組值的可打印字符串。
創建一個名爲rangeInArray的函數,該函數返回數組中值的範圍。在數學中,範圍是最小值和最大值(包括)之間差值的大小。我已經有了min和max的方法來使用它們,並且不需要爲這個方法包含任何循環。
這是我目前的代碼。
public class WestAndersonAsmnt9 {
/**
* @param args
*/
public static void main(String[] args) {
int Sample_Array_1[] = {4,7,9,3,2,8,15,6,8,7};
int Sample_Array_2[] = {12,6,4,8,3,7,11,1,6};
IntegerArray arr = new IntegerArray(Sample_Array_1.length);
IntegerArray arr2 = new IntegerArray(Sample_Array_2.length);
IntegerArray arr3 = new IntegerArray(Sample_Array_1);
IntegerArray arr4 = new IntegerArray(Sample_Array_2);
arr.fillRandom(100, 200);
arr.printLiteral();
arr2.fillRandom(100, 200);
arr2.printLiteral();
arr.copy(Sample_Array_1);
arr.printLiteral();
arr.copy(Sample_Array_2);
arr.printLiteral();
arr3.sumOfArray();
arr4.sumOfArray();
arr3.maxInArray();
arr4.maxInArray();
arr3.minInArray();
arr4.minInArray();
arr3.rangeInArray();
}
}
public class IntegerArray {
int arr[];
public IntegerArray(int size) {
arr = new int[size];
}
public IntegerArray(int value[]) {
arr = value;
}
public void fillRandom(int from, int to) {
int range = (to - from) + 1;
for (int i = 0; i < arr.length; i++) {
arr[i] = (int) (Math.random() * range) + from;
}
}
public void printLiteral() {
if (arr == null) {
System.out.println("No array");
} else if (arr.length <= 0) {
System.out.println("{}");
} else {
System.out.print("{" + arr[0]);
for (int i = 1; i < arr.length; i++) {
System.out.print("," + arr[i]);
}
System.out.println("}");
}
}
public void copy(int copy[]) {
arr = copy;
}
public void sumOfArray() {
int sum = 0;
for (int counter = 0; counter < arr.length; counter++) {
sum += arr[counter];
}
System.out.println("The sum is " + sum);
}
public int maxInArray() {
int largest = arr[0];
for (int i = 1; i < arr.length; i++)
if (arr[i] > largest) {
largest = arr[i];
}
System.out.println("The max is " + largest);
return largest
}
public int minInArray() {
int smallest = arr[0];
for (int i = 1; i < arr.length; i++)
if (arr[i] < smallest) {
smallest = arr[i];
}
System.out.println("The mmin is " + smallest);
return smallest
}
public int rangeInArray() {
int range = maxInArray() - minInArray() + 1; // + 1 for "inclusive"
System.out.println("The range is " + range);
return range;
}
}
PDF鏈接是密碼保護的後面,這使得您的問題無法回答,因爲它需要引用PDF。 – hexafraction
謝謝你指出。我已經解決了這個問題。 – Jetster220
試着簡化這個問題。沒有人想讀那麼多。 – Whitecat