Я читал о массивах в java, и я составил код для вычисления количества появлений всех чисел в массиве.Как создать статический массив в основном методе в java?
public class Example {
static int b[] = new int[13]; // I can not do static int b[] = new int[a.length] because a[] in not static array
static int count = 0;
public static void main(String[] args) {
int[] a = { 2, 3, 4, 3, 3, 5, 4, 10, 9, 1, 9, 11, 15 };
counting(a);
printCount();
}
private static void printCount() {
int k = 0;
for (int i = 0; i < b.length; i++) {
System.out.print("number" + " " + a[k] + " " + "is found" + " "); // here I get error in a[k] because it is not static , eclipse says : a cannot be resolved to a variable
System.out.println(b[i] + " " + "times");
k++;
}
System.out.println();
}
private static void counting(int[] a) {
for (int i = 0; i < a.length; i++) {
for (int k = 0; k < a.length; k++) {
if (a[i] == a[k]) {
b[i] = ++count;
}
}
count = 0;
}
}
}
я застрял в моем PrintCount() метод, то я не могу назвать мой в [] массив в методе, так как [] не является статическим основным методом. Я попытался написать static int[] a = { 2, 3, 4, 3, 3, 5, 4, 10, 9, 1, 9, 11, 15 };
в моем основном методе, но eclipse этого не принимает. Как я могу создать [] статический массив, чтобы его можно было найти во всех методах в моем классе класса выше?
Спасибо
Переместить его из области только для метода ... Он должен быть объявлен в области, где объявлен b []. – CConard96
Вы можете сделать глобальную переменную, как вы делали с 'b' и' count'. Или вы можете отправить массив в качестве параметра в метод с помощью 'printCount (a);' и изменить подпись метода на 'private static void printCount (int [] a)'. – Gendarme
спасибо, не могу ли я оставить его в основном методе? есть способ справиться с этим, не перемещая его рядом с b [] array – Joe