JiaoJi.java:112: error: Illegal static declaration in inner class JiaoJi.BubbleSort public static void bubbleSort(int[] array) { ^ modifier 'static' is only allowed in constant variable declarations 1 error
时间: 2023-06-14 20:03:49 浏览: 158
两个字符串交集并集
4星 · 用户满意度95%
这个错误是因为在一个内部类中,静态变量或者静态方法只能在常量变量声明时使用。而在你的代码中,`BubbleSort` 内部类的 `bubbleSort` 方法被声明为静态方法,这是不允许的。解决这个问题的方法是将 `BubbleSort` 内部类声明为静态类,或者将 `bubbleSort` 方法声明为非静态方法。以下是两种修改方式的示例代码:
将 BubbleSort 内部类声明为静态类:
```
public class JiaoJi {
private static int[] array = { 1, 2, 3, 4, 5 };
public static void main(String[] args) {
BubbleSort.bubbleSort(array);
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
}
static class BubbleSort {
public static void bubbleSort(int[] array) {
// bubble sort algorithm
}
}
}
```
将 bubbleSort 方法声明为非静态方法:
```
public class JiaoJi {
private int[] array = { 1, 2, 3, 4, 5 };
public static void main(String[] args) {
JiaoJi jiaoJi = new JiaoJi();
jiaoJi.bubbleSort(array);
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
}
public void bubbleSort(int[] array) {
// bubble sort algorithm
}
}
```
阅读全文