저는 C#을 처음 접해서 배열을 보았습니다.C# 다차원 배열 반복
을 감안할 때 :
int[][] myJagArray = new int[5][];
이유는 무엇입니까 다음 인쇄합니다 유형 J의 (선택 System.Int32 []), 그리고 각 J의 내용?
foreach (int[] j in myJagArray)
{
Console.WriteLine("j : {0}",j);
}
저는 C#을 처음 접해서 배열을 보았습니다.C# 다차원 배열 반복
을 감안할 때 :
int[][] myJagArray = new int[5][];
이유는 무엇입니까 다음 인쇄합니다 유형 J의 (선택 System.Int32 []), 그리고 각 J의 내용?
foreach (int[] j in myJagArray)
{
Console.WriteLine("j : {0}",j);
}
는 Array.ToString()
있기 때문에이 유형의 이름을 반환, 배열의 내용을 반환하지 않으며, Console.WriteLine
암시 적 매개 변수로 보내 객체 각각에 ToString()
를 호출합니다.
이 배열은 다차원 배열의 일부라는 사실에 아무 관련이 없다, 그것은 단순히 CLR 개발자가 선택한 방법입니다 (또는 오히려,하지를 선택) System.Array
에 ToString()
를 구현합니다.
이 경우 j가 배열이고 Object ToString 구현을 사용하며 해당 비헤이비어가 해당 유형을 인쇄하므로 ToString() 메서드의 출력을 인쇄합니다. 당신이 할 수 있습니다 여기에서
:
foreach (int[] j in myJagArray)
{
StringBuilder sb = new StringBuilder("j : ");
foreach (int k in j)
{
sb.append("[").append(k).append("]");
}
Console.WriteLine(sb.Tostring());
}
당신은 int
의 배열을 인쇄하고 있습니다.
foreach (int[] j in myJagArray)
{
foreach (int i in j)
{
Console.WriteLine("i : {0}",i);
}
}
당신은
다음과 같이해야한다 : 다음 시도 할 수 있습니다Console.WriteLine("j : {0}",j[0]);
가 전체 내용을 인쇄하려면 :
하여 배열에서 첫 번째 값을 인쇄하려면 다음 시도
for(int i=0;i<5;i++)
for(int j=0;j<5;j++)
print(myjagarray[i][j].tostring());
Console.WriteLine을 사용하여 값을 출력하면 실제로 ToString()을 그 값 및 Array.ToString()은 값이 아니라 유형을 반환합니다. j의 값을 출력하려면 두 번째 루프를 실행해야합니다.
foreach (int[] j in myJagArray)
{
Console.Write("j: ");
foreach (int i in j)
{
Console.Write("{0} ",i);
}
Console.Write("\n");
}