2017-11-13 4 views
2

아래의 방법을 더 빨리 수행하려면 SysteM.arraycopy를 사용하고 싶습니다. 그러나 필자가 아는 한 Arraycopy는 복잡한 논리를 포함 할 수 없습니다.배열 루프 방지 sonar 문제 : system.arraycopy

for (int c = 0; c < newRow.length && c < target[r].length; ++c) 
{ 
    target[r][c] = newRow[c]; 
} 

모든 도움을 환영합니다. 미리 감사드립니다.

답변

1

System.arraycopy을 사용하여 다시 쓸 수 있습니다. 이 그것에 대해 이런 식으로 :

  • 당신은 newRow
  • 의 인덱스 0에서 시작하여 복사 할 당신은 당신이 가장 newRow.length 또는 target[r].length 요소에 복사 할 target[r]
  • 에 인덱스 0에서 시작하여 복사 할,

    System.arraycopy(newRow, 0, target[r], 0, Math.min(newRow.length, target[r].length)); 
    
    : 중이 같이

+0

감사합니다. @janos – pres