2013-12-11 7 views
-2

메모리를 추적하는 프로그램을 작성하고 있습니다. 최대 메모리는 3000이고 그 숫자에 도달하면 입력 된 프로세스가 대기중인 Q (별도의 상자)에 표시됩니다. 내 문제는 내가 최대 7 요소의 배열을 가지고 있지만, 첫 번째 요소를 입력하면, 그것은 7 번 출력합니다. 7 가지 요소가 출력되도록 변경해야하는 항목이 무엇인지 잘 모르겠습니다.배열이 있지만 첫 번째 요소 만 출력됩니다.

int processes[]= new int [7]; 

String s1 = IDbox.getText(); 
String s2 = IDsize.getText(); 
int x; 
for (x=0;x<processes.length;x++) 
{     
    if (totalmem <= 3000) 
    { 
     memory.append(s1 + "  " + s2); 
     memory.append("\n"); 

     totalmem = totalmem + idsize;  
    } 
    else 
    { 
     memory.setText("Memory is already full"); 
     //throw into waiting queue 
     waitingQ.append(s1 + "  " + s2); 
     waitingQ.append("\n"); 
    }  
}//end for 
+1

코드가 이해가되지 않는다는 것 외에도 (x와 프로세스를 사용하지 마십시오), 문장이 틀리거나, 최대 7 개의 요소 배열이없고, 정확히 7 개의 요소 배열이 있습니다 , 항상 배열의 전체 수명 동안. – MrBackend

답변

0

정수 배열의 크기는 7이고 배열 선언은 잘못되었습니다 (int[] 배열 선언이 잘못되었습니다).

는이 작업을 수행 : 나는 또한에 대한 루프 내에서 int x = 0를 선언 할

int memory = 3000; 
int[] processes = new int[memory]; 

. 범위 문제.

관련 문제