https://school.programmers.co.kr/learn/courses/30/lessons/120844?language=java

class Solution {
public int[] solution(int[] numbers, String direction) {
int[] answer = new int[numbers.length];
if (direction.equals("right")) {
for (int i = 0; i < numbers.length; i++) {
answer[(i + 1) % numbers.length] = numbers[i];
}
} else if (direction.equals("left")) {
for (int i = 0; i < numbers.length; i++) {
answer[i] = numbers[(i + 1) % numbers.length];
}
}
return answer;
}
}
배열을 한쪽방향으로 이동시키기 위해 반복문을 통해 나머지 연산으로 처리하였고, 문자열 String으로 입력받은 값을 통해 반복문이 동작하도록 equals 메서드 사용.
answer[(i + 1) % numbers.length] 는 배열의 길이를 벗어나지 않도록 하기위한 계산. 예를들어 배열의 마지막 요소 다음에는 첫번째 요소로 이동하며, 해당값은 numbers[i]의 값이 저장됨
numbers 배열에서 (i + 1) % numbers.length 위치의 값을 가져와 answer배열의 현재 위치 i에 할당됨