배열을 이용한 문자열 거꾸로 출력하기


문자열을 거꾸로 반환하는 클래스와 메소드가 있지만, 직접 코드로 구현 해 봤습니다.



import java.util.Scanner;

public class Reverse {
          void reverse(){ // 문자열을 입력받아서 거꾸로 출력하는 메소드
              Scanner s=new Scanner(System.in);
              System.out.println("문자를 입력하세요.");
              String input=s.nextLine();
              
              int len = input.length(); // 입력한 문자열의 길이를 저장하는 len 변수
              char[] change=new char[len]; // 한글자씩 담을 char형 배열 선언 - 문자열의 길이만큼
                        
              for(int i=0; i<len; i++){
              change[i]=input.charAt(i); // 문자열을 한글자씩 담는다.
              }
                        
              for(int i=len-1; i>=0; i--) // 배열의 길이-1만큼해야 가장 끝 방부터 시작한다.
              {
              System.out.print(change[i]); // 맨 끝 방부터 0번방까지 출력
              }
                   
          }
     
     public static void main(String[] args) {
          Reverse rev = new Reverse();
          rev.reverse(); // 메소드 호출
          
     }
}

(실행 결과)

문자를 입력하세요.
Hava A Nice Day!!
!!yaD eciN A avaH


정리

- input.charAt(i) : input문자열의 i번째 문자를 반환

- input.length() : input문자열의 길이를 반환

  추가적으로 .length는 배열의 길이 반환




+ Recent posts