本文共 3484 字,大约阅读时间需要 11 分钟。
java字符串最长回文串
Given a string and we have to check whether it is palindrome string or not.
给定一个字符串,我们必须检查它是否是回文字符串。
A string that is equal to its reverse string is known as palindrome string. To implement the program for checking whether a given string is a palindrome or not, we have created a function "isPalindrome()".
等于其反向字符串的字符串称为回文字符串 。 为了实现检查给定字符串是否为回文的程序 ,我们创建了一个函数“ isPalindrome()” 。
In the function,
在功能上
We are checking for whether a string is an empty string or not – if the string is an empty string then throwing an error.
我们正在检查一个字符串是否为空字符串-如果该字符串为空字符串,则抛出错误。
Then, we are converting string to uppercase to make comparison case insensitive.
然后,我们将字符串转换为大写以使比较大小写不敏感。
Then, running a loop from 0 to len/2, to compare the first character with last character, the second character with second last character and so on..., and checks whether they are equal or not if both the elements are equal it goes for the next one. If not, then code returns false. Going on comparing first and last elements of the string if it reaches the length/2 mark then the loop ends, and return true for Palindrome.
然后,从0到len / 2循环运行,比较第一个字符与最后一个字符,第二个字符与倒数第二个字符,依此类推...,并检查两个元素是否相等,是否相等?去下一个。 如果不是,则代码返回false。 继续比较字符串的第一个和最后一个元素(如果它达到length / 2标记),则循环结束,并为回文式返回true。
// Java code for checking string palindrome public class Main { //function to check whether string is Palindrome or not public static boolean isPalindrome(String str) { // Checking for null if (str == null) { throw new IllegalArgumentException("String is null."); } // length of the string // if there is one character string - returing true int len = str.length(); if (len <= 1) { return true; } // Converting the string into uppercase // to make the comparisons case insensitive String strU = str.toUpperCase(); // result variable // default initializing it with true boolean result = true; for (int i = 0; i < len / 2; i++) { if (strU.charAt(i) != strU.charAt(len - 1 - i)) { result = false; // break the loop if the condition is true break; } } return result; } //main code public static void main(String[] args) { String str1 = "Hello world!"; if (isPalindrome(str1)) { System.out.println(str1 + " is a palindrome string "); } else { System.out.println(str1 + " is not a palindrome string "); } String str2 = "ABCxCBA"; if (isPalindrome(str2)) { System.out.println(str2 + " is a palindrome string "); } else { System.out.println(str2 + " is not a palindrome string "); } String str3 = "noon"; if (isPalindrome(str3)) { System.out.println(str3 + " is a palindrome string "); } else { System.out.println(str3 + " is not a palindrome string "); } String str4 = "nooN"; if (isPalindrome(str4)) { System.out.println(str4 + " is a palindrome string "); } else { System.out.println(str4 + " is not a palindrome string "); } }}
Output
输出量
Hello world! is not a palindrome stringABCxCBA is a palindrome stringnoon is a palindrome stringnooN is a palindrome string
翻译自:
java字符串最长回文串
转载地址:http://ettzd.baihongyu.com/