문제
풀이
- caseNumber를 입력받는다.
- 입력받은 caseNumber만큼, 반복문을 이용해 입력받고 문자열을 split으로 짜른 후, 배열에 저장한다.
3.저장한 배열을 배열의 크기 -1 ~ 0번째 까지 -- 를 하면서 출력한다
소스코드
강의에서 나온 코드
마찬가지로 solution 메소드를 따로 작성했다.
- str[] 배열은 BufferedReader를 통해 입력받은 String이다.
- ArrayList를 이용해 String을 ArrayList에 담고,
StringBuilder에 (x)를 담고, reverse().toString()을 통해 tmp에 저장한다.
그리고 ArrayList의 add메소드를 통해 tmp를 저장한 후 출력한다.
reverse메소드를 사용하지 않고, 직접 구현하기
- solution메소드 매개변수로 정수 n , String배열 str을 받는다
for(String x : str)
String형식의 str변수를 x에 하나씩 담는다.
char[] s = x.toCharArray();
위에서 넘겨받은 String x 를 char변수 s에 담는다.
int lt = 0; , int rt= x.length()-1;
배열의 처음을 lt 끝을 rt라고 설정한다.
while(lt<rt){
char tmp = s[lt];
s[lt] = s[rt];
s[rt] = tmp;
lt++;
rt--;
}
String tmp = String.valueOf(s);
answer.add(tmp);
}
while(lt<rt)
rt가 더 클때까지 반복한다.
- lt와 rt의 자리를 바꿔주고 index를 lt++, rt--를 해준다.