Java程序判断给定的字符串是否为回文
时间:2020-01-09 10:35:23  来源:igfitidea点击:
在本文中,我们将介绍如何编写Java程序来检查给定的字符串是否为回文。
如果将一个字符串反向转换为回文,例如妈妈malayalam,则称该字符串为回文。
是否给出String Palindrome – Java程序
为了找到给定的字符串在Java中是否为回文,我们可以使用StringBuider类的reverse()方法来反转String,然后将其与原始String进行比较。如果两者相同,则传递的字符串为回文。
如果明确要求我们不要在Java中使用任何内置方法,则可以通过向后读取传递的字符串来构建反向字符串。在下面的Java程序解决方案中,使用了以上两个选项。
public class Palindrome {
	public static void main(String[] args) {
		checkPalindromeReverse("malayalam");
		checkPalindromeReverse("code");
		System.out.println("------------");
		checkPalindrome("mom");
		checkPalindrome("12321");
		checkPalindrome("test");
	}
	
	// Method using StringBulider class reverse method
	private static void checkPalindromeReverse(String str){
		StringBuilder sb = new StringBuilder(str);
		// reverse the string and compare with original 
		// to check if strings are same
		if(str.equalsIgnoreCase(sb.reverse().toString())){
			System.out.println(str + " is a Palindrome");
		}else{
			System.out.println(str + " is not a Palindrome");
		}       
	}
	
	private static void checkPalindrome(String str){
		StringBuilder sb = new StringBuilder();
		// read string backward
		for(int i = str.length() - 1; i >= 0; i--){
			sb.append(str.charAt(i));
		}            
		if(str.equalsIgnoreCase(sb.toString())){
			System.out.println(str + " is a Palindrome");
		}else{
			System.out.println(str + " is not a Palindrome");
		}
	}
}
输出量
malayalam is a Palindrome code is not a Palindrome ------------ mom is a Palindrome 12321 is a Palindrome test is not a Palindrome

