Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 문자열을 뒤집는 가장 쉬운 방법은 무엇입니까?

<시간/>

내장된 reverse() 메소드

StringBuffer 클래스는 reverse()라는 메서드를 제공합니다. 현재 StringBuffer 객체의 내용을 뒤집고 결과 StringBuffer 객체를 반환합니다. Java를 사용하여 Sting을 되돌리는 가장 쉬운 방법입니다. 그렇게 하려면 -

  • 필요한 문자열을 매개변수로 전달하여 StringBuffer 클래스를 인스턴스화합니다.

  • 생성된 객체에서 reverse() 메서드를 호출합니다.

  • toString() 메서드를 사용하여 다시 String으로 변환합니다.

예시

public class Sample {
   public static void main(String args[]) {
      String str = new String("Hello how are you");
      StringBuffer sb = new StringBuffer(str);
      String str2 = sb.reverse().toString();
      System.out.println(str2);
   }
}

출력

uoy era woh olleH

문자열을 뒤집는 두 가지 방법을 더 살펴보겠습니다.

재귀 사용

재귀는 Java 프로그램이 재귀를 사용하여 Sting을 반전시킨 후 자체 내에서 함수를 호출하는 프로세스입니다 -

예시

public class StringReverse {
   public String reverseString(String str) {
      if(str.isEmpty()) {
         return str;
      }else {
         return reverseString(str.substring(1))+str.charAt(0);
      }
   }
   public static void main(String[] args) {
      StringReverse obj = new StringReverse();
      String result = obj.reverseString("Tutorialspoint");
      System.out.println(result);
   }
}

출력

tniopslairotuT

toCharArray() 사용

문자열을 문자 배열로 변환하고 배열의 문자를 바꿀 수도 있습니다.

배열을 뒤집으려면 첫 번째 요소를 마지막 요소로 바꾸고 두 번째 요소를 두 번째 마지막 요소로 바꾸는 식으로 배열의 길이가 홀수인 경우 중간 요소를 그대로 둡니다.

i가 배열의 첫 번째 요소인 경우 (배열의 길이 –i-1) 따라서 마지막 요소가 될 것이므로 array[i]를 array[(length of array –i-1)]로 교체하십시오. 배열의 시작에서 중간점까지 -

예시

import java.util.Arrays;
public class StringReverse {
   public static void main(String[] args) {
      String str = "Tutorialspoint";
      char[] myArray = str.toCharArray();
      int size = myArray.length;
      for (int i = 0; i < size / 2; i++) {
         char temp = myArray[i];
         myArray[i] = myArray[size - 1 - i];
         myArray[size - 1 - i] = temp;
      }
      System.out.println("Array after reverse:: ");
      System.out.println(Arrays.toString(myArray));
   }
}

출력

Array after reverse::
[t, n, i, o, p, s, l, a, i, r, o, t, u, T]