如何利用数组在 Java 中检查字符串是否为回文?
要验证给定的字符串是否回文(使用数组)
- 使用 toCharArray() 方法将给定的字符串转换为字符数组。
- 复制此数组。
- 反转数组。
- 比较原始数组和反转数组。
- 给定的字符串匹配的话,则是回文。
示例
import java.util.Arrays; import java.util.Scanner; public class Palindrome { public static void main(String args[]) { System.out.println("Enter a string "); Scanner sc = new Scanner(System.in); String s = sc.nextLine(); char[] myArray = s.toCharArray(); int size = myArray.length; char [] original = Arrays.copyOf(myArray,myArray.length); for (int i = 0; i < size / 2; i++) { char temp = myArray[i]; myArray[i] = myArray[size-i-1]; myArray[size-i-1] = temp; } System.out.println("Original Array"+Arrays.toString(original)); System.out.println("Reverse Array"+Arrays.toString(myArray)); if(Arrays.equals(myArray, original)) { System.out.println("Entered string is a palindrome"); } else { System.out.println("Entered string is not a palindrome"); } } }
输出
Enter a string mam Original Array[m, a, m] Reverse Array[m, a, m] Entered string is a palindrome
广告