자바에서 배열을 읽었으며 배열의 모든 숫자의 모양을 계산하는 코드를 만들었습니다.Java의 main 메소드에서 정적 배열을 만드는 방법은 무엇입니까?
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;
}
}
}
나는 []를 주요 방법 정적하지 않기 때문에이 나는 방법 내 A [] 배열을 호출 할 수 없습니다() 메서드 내 printCount 막혔다. 내 주된 방법으로 static int[] a = { 2, 3, 4, 3, 3, 5, 4, 10, 9, 1, 9, 11, 15 };
을 작성하려고했지만 이클립스는 그것을 받아들이지 않습니다. 위 예제 클래스의 모든 메서드에서 [] 배열을 정적 배열로 만들 수 있습니까?
메소드 전용 범위 밖으로 이동 ... b []가 선언 된 영역에서 선언되어야합니다. – CConard96
'b'와'count'처럼 전역 변수로 만들 수 있습니다. 또는 배열을'printCount (a); '를 사용하여 메소드에 매개 변수로 보내고 메소드의 서명을'private static void printCount (int [] a)'로 변경할 수 있습니다. – Gendarme
고마워요, 주된 방법으로 남겨 둘 수 없습니까? 배열을 옆으로 옮기지 않고 그것을 처리하는 방법이 있나요? – Joe