"multiarray"라는 2 차원 배열이 있습니다. 첫 번째는 [7]이고 두 번째는 현재 [500]으로 초기화됩니다. 두 번째 배열로가는 항목이 무작위로있는 텍스트 파일에서 읽는 중입니다. 이 어레이는 절대로 500 개의 엔트리를 가질 수 없으며 얼마나 많은 엔트리가 있는지 알아야합니다.변수를 사용하는 동안 "for"루프에서 array.length를 확인하려고 시도했습니다.
나는 이 내가 알 필요가있는 것을 말해 줄 것이라고 생각했지만 루핑되는 것으로 보인다.
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Formatter;
import java.util.Scanner;
public class DOW
{
public static void main(String[] args)
{
File file = new File ("/Users/***/RandomInts.txt") ;
try
{
Scanner scanner = new Scanner(file) ;
//Formatter formatter = new Formatter (new File ("outputfile.txt")) ;
int [][] multiarray = new int [7][500];
int counter1 = 0;
int counter2 = 0;
int counter3 = 0;
int counter4 = 0;
int counter5 = 0;
int counter6 = 0;
int counter7 = 0;
while (scanner.hasNext())
{
int dow = scanner.nextInt() ;
int temp = scanner.nextInt() ;
dow = dow -1;
if(dow == 0)
{
multiarray[dow][counter1] = temp;
counter1 ++;
}
if(dow == 1)
{
multiarray[dow][counter2] = temp;
counter2 ++;
}
if(dow == 2)
{
multiarray[dow][counter3] = temp;
counter3 ++;
}
if(dow == 3)
{
multiarray[dow][counter4] = temp;
counter4 ++;
}
if(dow == 4)
{
multiarray[dow][counter5] = temp;
counter5 ++;
}
if(dow == 5)
{
multiarray[dow][counter6] = temp;
counter6 ++;
}
if(dow == 6)
{
multiarray[dow][counter7] = temp;
counter7 ++;
}
}
for (int x = 0; x < 7; x++)
{
int hightemp = 0;
int lowtemp = 0;
int avetemp = 0;
for (int y = 0; y < multiarray[x].length ; y++)
{
if (multiarray[x][y] > hightemp)
{
hightemp = multiarray[x][y];
}
if (multiarray[x][y] < lowtemp)
{
lowtemp = multiarray[x][y];
}
avetemp = avetemp + multiarray[x][y];
}
//avetemp = avetemp/
}
//formatter.format (" %d %d \n " , dow , temp) ;
//formatter.flush() ;
//formatter.close() ;
//int[] dow;
//dow = new int [7];
//int[] temp;
//temp = new int [100];
//int x = 0;
//while (x < temp.length)
//{
//System.out.println (temp[x]);
//++x;
//temp[x]=0;
//}
}
catch (FileNotFoundException e)
{}
}
}
배열 길이를 알고 싶은 이유는 일부 수학을 위해 전화를 걸기 때문입니다.
avetemp = avetemp/multiarray[x].length
이미위한 카운터가 [X]는이 파일에서 읽을 수 있지만 내가 수동으로 모든 것을 쓸 필요가 없었어요 그래서 여기를 사용하지 기대되고있다.
입력 텍스트 파일의 샘플이
:5 67
2 -15
1 -40
7 32
6 -24
7 33
5 -32
3 57
3 41
6 51
은 기본적으로 첫 번째 열은 요일이고 두 번째는 온도이다.
ArrayList를 사용하십시오. ArrayList # size() –
배열에 아무것도 넣지 않을 것입니다. 우리는 파일에서 읽는 코드를보고 배열에 내용을 넣어야합니다. – Sanchit
나는 여기에 모든 해답을 가지고 ArrayList 또는 LinkedList를 사용 하겠지만, 만약 당신이 정말로 정말로 기본 배열을 사용해야한다면'Integer' 박스형을 사용할 수 있습니다. 배열에있는 모든 ** - ** null ** 정수를 계산하여 데이터 길이를 얻을 수 있습니다 (배열 길이는 여전히 500입니다). – ADTC