如何使用 Java 中的包信息解决此问题?
How do I fix this issue with package information in Java?
我将我的问题具体化。我正在制作一个包,其中包含一个主要 class 和其他包含排序算法的 classes,其中一个 classes 用于打印数组和交换功能。
类 在我的项目中:Main.java、quickSort.java、props.java.
问题是,当我想在主 class 中显示该信息时,什么也没有显示,或者出现以下错误:
class 中的方法 QuickSort 无法将快速排序应用于给定类型;
我不知道这个错误的来源,因为根据我的说法,我正确地包含了属于 quickSort class 的方法。所以非常感谢你的帮助。
此外,我将包很好地包含在对应于 quickSort 的 class 和道具 class 中,以防您有任何疑问。
既然你问了,这里是我的快速排序 class 和 props class:
public class quickSort {
public static int partition(int arr[], int low, int high){
int pivot = arr[high];
int i = (low-1);
for (int j=low; j<high; j++){
if (arr[j] <= pivot)
{
i++;
props.swap(arr, i, j);
}
}
int temp = arr[i+1];
arr[i+1] = arr[high];
arr[high] = temp;
return i+1;
}
public static void QuickSort(int arr[], int low, int high){
if (low < high){
int pi = partition(arr, low, high);
QuickSort(arr, low, pi-1);
QuickSort(arr, pi+1, high);
}
}
}
// This is the code I made for the main class:
package QuickSortAlgorithm;
public class Main {
public static void main(String args[]){
int[] arr1 = {17, 90, 2, 8, 11, 98, 4, 6};
System.out.println("unsorted array:");
props.printArray(arr1);
quickSort.QuickSort(arr1);
System.out.println("sorted array:");
props.printArray(arr1);
}
}
// This is the code I made for the props class:
package QuickSortAlgorithm;
public class props {
public static void printArray(int arr[]){
int n = arr.length;
for (int i=0; i<n; ++i)
System.out.print(arr[i]+" ");
System.out.println();
}
public static void swap(int arr[], int i, int j){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
您需要在调用 quickSort.QuickSort() 时传递 3 个参数:
required: int[],int,int
found: int[]
E.g: quickSort.QuickSort(arr1, 0, 0)
我将我的问题具体化。我正在制作一个包,其中包含一个主要 class 和其他包含排序算法的 classes,其中一个 classes 用于打印数组和交换功能。 类 在我的项目中:Main.java、quickSort.java、props.java. 问题是,当我想在主 class 中显示该信息时,什么也没有显示,或者出现以下错误: class 中的方法 QuickSort 无法将快速排序应用于给定类型;
我不知道这个错误的来源,因为根据我的说法,我正确地包含了属于 quickSort class 的方法。所以非常感谢你的帮助。
此外,我将包很好地包含在对应于 quickSort 的 class 和道具 class 中,以防您有任何疑问。
既然你问了,这里是我的快速排序 class 和 props class:
public class quickSort {
public static int partition(int arr[], int low, int high){
int pivot = arr[high];
int i = (low-1);
for (int j=low; j<high; j++){
if (arr[j] <= pivot)
{
i++;
props.swap(arr, i, j);
}
}
int temp = arr[i+1];
arr[i+1] = arr[high];
arr[high] = temp;
return i+1;
}
public static void QuickSort(int arr[], int low, int high){
if (low < high){
int pi = partition(arr, low, high);
QuickSort(arr, low, pi-1);
QuickSort(arr, pi+1, high);
}
}
}
// This is the code I made for the main class:
package QuickSortAlgorithm;
public class Main {
public static void main(String args[]){
int[] arr1 = {17, 90, 2, 8, 11, 98, 4, 6};
System.out.println("unsorted array:");
props.printArray(arr1);
quickSort.QuickSort(arr1);
System.out.println("sorted array:");
props.printArray(arr1);
}
}
// This is the code I made for the props class:
package QuickSortAlgorithm;
public class props {
public static void printArray(int arr[]){
int n = arr.length;
for (int i=0; i<n; ++i)
System.out.print(arr[i]+" ");
System.out.println();
}
public static void swap(int arr[], int i, int j){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
您需要在调用 quickSort.QuickSort() 时传递 3 个参数:
required: int[],int,int
found: int[]
E.g: quickSort.QuickSort(arr1, 0, 0)