1 public class Problem{
2 public static void main(String[] args){
3 String str = "Information!";
4 int n = str.length();
5 char[] st = new char(n);
6 n--;
7 for(int k=n; k>=0; k--){
8 st[n-k] = str.charAt(k);
9 }
10 for(char c:st){
11 System.out.printf("%c", c);
12 }
13 }
14 }
문자열은 String 전역 객체를 직접 사용하여 생성할 수 있습니다.
3열 : String str은 Information! 이라는 문자열을 저장
4열 : 문자열 변수 str의 크기인 12를 정수형 변수 n의 초기값으로 할당합니다.
※ length() 메소드 : 문자열 변수에 저장된 문자열의 길이를 반환
5열 : 12개의 요소를 갖는 문자 변수 st를 선언합니다.
6열 : n의 값을 1감소시킨다. 배열의 위치가 0부터 시작하므로 배열 st는 st[0] ~ st[11]까지 12개의 문자를 저장하게 됨
7열,8열 : 문자열 변수 str에서 k번쨰에 있는 문자를 st[n-k]에 저장 → str[11] ~ str[0] 순으로 뒤에서 부터 차례로 저장
※ charAt() 메소드 : 문자열에서 지정된 위치의 문자를 읽어온다.
10열 : st배열의 요소 수만큼 11열 ( 출력 )을 반복 수행한다.
n | k | str.charAt(k) | n-k | st[n-k] | 배열 |
12 | |||||
11 | 11 | ! | 0 | ! | ! |
10 | n | 1 | n | !n | |
9 | o | 2 | o | !no | |
8 | i | 3 | i | !noi | |
7 | t | 4 | t | !noit | |
6 | a | 5 | a | !noita | |
5 | m | 6 | m | !noitam | |
4 | r | 7 | r | !noitamr | |
3 | o | 8 | o | !noitamro | |
2 | f | 9 | f | !noitamrof | |
1 | n | 10 | n | !noitamrofn | |
0 | i | 11 | i | !noitamrofnI |
728x90
'Programming > Java' 카테고리의 다른 글
외부클래스 (0) | 2020.10.20 |
---|---|
실행 클래스 내부에 메소드 정의 (0) | 2020.10.20 |
연습 [ 1~100 ] (0) | 2020.04.13 |
JAVA - 배열 [Array] (0) | 2020.04.11 |
JAVA - 반복문 ( while ) (0) | 2020.04.11 |